pre_get_posts Action —— 在创建查询变量之后、运行实际查询之前触发的操作

2021-08-28 0 1,616 百度已收录

pre_get_posts Action主要用来修改主查询,经常在需要修改主文章查询时使用,可以让我们不用创建自定义查询来得到我们需要的文章内容。

参数

该Action只有一个参数,就是通过引用传递的$wp_query 对象。

使用示例

下面是几个使用示例,可以帮我我们快速了解 pre_get_posts Action 的使用方法。

在首页文章中排除ID位7、11 的文章。

add_action( 'pre_get_posts', function ($query) {
    if ( $query->is_home() && $query->is_main_query() ) {
        $query->set( 'post__not_in', array( 7, 11 ) );
    }
} );

在搜索结果中排除页面、只搜索文章内容。


add_action( 'pre_get_posts', function ($query) {
    if ( ! is_admin() && $query->is_main_query() ) {
        if ( $query->is_search ) {
            $query->set( 'post_type', 'post' );
        }
    }
} );

声明:本站带有” 原 “字文章,均为本站作者原创发布。原创文章任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站作者内容侵犯了原著者的合法权益,可联系我们进行处理。

文章来源 wpzhiku https://www.wpzhiku.com/codex/pregetpostsaction-zai-chuang/

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务

  • 软件商用保障
    正版采购,正规版权
  • 终身SVIP
    一次购买,终身受益
  • 海量资源
    教程、主题、插件一应俱全
  • 高效学习
    多位资深大佬,坐台解答
  • 信用保证
    数百万站长和用户的选择