markdown 使用pre_get_posts

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了markdown 使用pre_get_posts相关的知识,希望对你有一定的参考价值。

Normally when devs require a way to modify the output of an archive or taxonomy etc, WP_Query is used, which creates an extra query instead of just modifying the default loop output. To get around this, use pre_get_posts, as below:
```
function tax_custom_query( $query ) {
    if ( !is_admin() && $query->is_tax() && $query->is_main_query() ) {
		$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
		
        $query->set( 'posts_per_page', get_option('posts_per_page') );
        $query->set( 'paged', $paged );
        $query->set( 'meta_key', 'featured' );
        $query->set( 'orderby', 'meta_value' );
        $query->set( 'order', 'desc' );
        $query->set( 'facetwp', true );
    }
}
add_filter( 'pre_get_posts', 'tax_custom_query' );
```
The `!is_admin()` is important, otherwise you may find that the admin area page listings are modified. There is also a question mark over whether `is_main_query` actually does anything whatsover, so that could be ommited.

以上是关于markdown 使用pre_get_posts的主要内容,如果未能解决你的问题,请参考以下文章

php 在标准循环上设置查询参数,而无需使用pre_get_posts过滤器编写自定义wp查询

php 在标准循环上设置查询参数,而无需使用pre_get_posts过滤器编写自定义wp查询

类别页面上产品的 pre_get_posts - woocommerce

Wordpress - 过滤搜索查询以排除 postmeta 值

从存档页中排除类别

wordpress按类别显示自定义类型