小编ben*_*ben的帖子

add_filter与add_action之间的区别

我正在查看我的functions.php并想知道为什么CODE A add_action在CODE B使用时会使用add_filter
CODE A的主要目标是包括和排除特定类别.
CODE B的主要目标是排除特定类别.

使用add_actionCODE A
add_filterCODE B 是否正确?



代码A:显示主页的特定类别(称为"精选"),而不是"最新帖子"

function featured_category( $query ) {

    if ( $query->is_home() && $query->is_main_query() ) {
        $query->set( 'category_name', 'featured' );
        $query->set( 'category__not_in', array(60, 61) );
        $query->set( 'posts_per_page', 5 );
    }
}
add_action( 'pre_get_posts', 'featured_category' );
Run Code Online (Sandbox Code Playgroud)



代码B:排除搜索结果的"赞助帖子类别"

function search_filter($query) {

    if ( $query->is_search && $query->is_main_query() ) {
        $query->set('post_type', 'post');
        $query->set( 'category__not_in', array(60, 61) );
        $query->set( 'posts_per_page', 20 );
    }

    return …
Run Code Online (Sandbox Code Playgroud)

php wordpress add-filter

6
推荐指数
1
解决办法
5308
查看次数

标签 统计

add-filter ×1

php ×1

wordpress ×1