[oik] plugins.com

WordPress plugins and themes

  • Home
  • About
    • lazy shortcodes
    • smart shortcodes
    • oik base plugin
      • oik – donate
      • oik PayPal buttons
      • oik installation
      • oik Button Shortcode button
      • oik changelog
      • oik FAQ
      • oik plugins on SVN
      • oik plugins on GitHub
  • Plugins
    • oik base plugin
    • FREE oik plugins
    • WordPress plugins
    • Premium oik plugins
    • Bespoke oik plugins
  • Shortcodes
    • Shortcode examples
  • Blocks
    • Block examples
  • APIs
    • ALL action and filter hooks
  • Blog

oik_types_pre_get_posts() – Implement "pre_get_posts" for oik-types

You appear to be a bot. Output may be restricted

Description

Implement "pre_get_posts" for oik-types

Updates the array of post types which can be displayed on the page that's showing the blog posts. i.e. The home page, as opposed to the front page. Notes:

  • You can't check for main query in "pre_get_posts"
  • You can't use WP_Query::is_main_query() either
  • You can't check is_home() in pre_get_posts for other reasons
  • Assumes that the "post" post type, for blog posts, will always be included.
  • Once we've run the main query we don't need this filter any more.

Usage

$WP_Query = oik_types_pre_get_posts( $query );

Parameters

$query
( WP_Query ) required – the query object for the current query

Returns

WP_Query the updated query object

Source

File name: oik-types/oik-types.php
Lines:
1 to 20 of 20
function oik_types_pre_get_posts( $query ) {

  if ( is_home() && false == $query->get('suppress_filters') ) {
    $post_types = array( "post" );
    global $wp_post_types;
    foreach ( $wp_post_types as $post_type => $data ) {
      $supports = post_type_supports( $post_type, "home" );
      if ( $supports ) {
        $post_types[] = $post_type;
        if ( $post_type == "attachment" ) {
          add_filter( "posts_where", "oik_types_posts_where", 10, 2);
        }
      }
    }
    $query->set( 'post_type', $post_types );
    remove_filter( "pre_get_posts", "oik_types_pre_get_posts" );
  }
  bw_trace2( $query, "Query", false, BW_TRACE_VERBOSE );
  return( $query );
}
 
 View on GitHub

Published: March 13, 2017 | Last updated: March 13, 2017

Information

Function name: oik_types_pre_get_posts
Plugin ref: oik-types
Version: 2.3.0
Sourcefile: oik-types.php
File ref: oik-types.php
API type: for
Deprecated?: No
API Letters: G,O,P,T

Recent plugin updates

oik-weight-zone-shipping v0.2.6 oik-weight-zone-shipping v0.2.6 has been tested with WooCommerce 7.4.0. ...
sb-chart-block v1.2.3 SB Chart Block v1.2.3 contains a fix for an Uncaught Error: Call to undefined function bw_trace2()  ...
SB Chart Block v1.2.1 Update to SB Chart Block v1.2.0 for custom colors, font size options and multiple y-axis charts.  ...
oik-css v2.1.0 Update to oik-css v2.1.0 for the ability to style CSS and GeSHi output in documentation. ...
oik-types v2.3.0 Update to oik-types v2.3.0 for improved control over sort order on archives ...

Plugins

  • All Plugins
  • oik base plugin
  • FREE oik plugins
  • WordPress plugins
  • Premium oik plugins

Themes

  • FREE themes
  • Bespoke themes
  • Premium themes

Blocks

  • All Blocks
  • Block examples
  • About Blocks

Shortcodes

  • All Shortcodes
  • Shortcode examples
  • About Shortcodes

Reference

  • About APIs
  • All APIs
  • All Classes
  • All Files
  • All Hooks

Support

  • Contact
  • Cookies policy
  • Get API key
  • Privacy
  • Request support
  • Sitemap
  • Stay informed
  • Terms and Conditions
oik-plugins
Email: herb@bobbingwide.com

Weight shipping plugins

Find out which cart weight shipping plugin you need for your WooCommerce site.
Which cart weight based plugin do I need?

Site:  www.oik-plugins.com
© Copyright oik-plugins 2011-2023. All rights reserved.


Website designed and developed by Herb Miller of Bobbing Wide
Proudly powered by WordPress and oik-plugins
WordPress 6.2. PHP: 7.4.33. Memory limit: 768M