按预期的方式过滤WordPress文章按分类术语不起作用
创始人
2024-08-23 07:30:13
0

要按预期的方式过滤WordPress文章按分类术语,你可以使用pre_get_posts钩子来修改默认的文章查询。以下是一个示例代码:

function filter_posts_by_category_term($query) {
    // 检查是否在前台主查询中
    if ( ! is_admin() && $query->is_main_query() ) {
        // 检查是否是文章存档页面
        if ( $query->is_archive() ) {
            // 获取当前分类术语的slug
            $category_slug = $query->get( 'category_name' );
            
            // 如果slug存在,将其转换为term_id
            if ( ! empty( $category_slug ) ) {
                $term = get_term_by( 'slug', $category_slug, 'category' );
                $term_id = $term->term_id;
                
                // 修改查询以筛选所选分类的文章
                $query->set( 'cat', $term_id );
            }
        }
    }
}
add_action( 'pre_get_posts', 'filter_posts_by_category_term' );

这段代码将在调用任何文章查询之前运行,并且只会在前台主查询时运行。它首先检查是否在文章存档页面上,并获取当前分类术语的slug。如果slug存在,它将使用get_term_by函数将slug转换为term_id,并将cat参数设置为该term_id,从而按分类术语过滤文章。

将这段代码添加到你的主题的functions.php文件中,并保存更改。这样,WordPress将按预期的方式过滤文章按分类术语。

请注意,这仅适用于默认的分类法(category),如果你使用的是自定义分类法,你需要相应地修改代码中的分类法参数。

相关内容

热门资讯

透视最新!aapoker插件(... 透视最新!aapoker插件(透视)发牌逻辑(原来是真的有挂);1、任何aapoker插件ai辅助神...
透视代打!aapoker怎么设... 透视代打!aapoker怎么设置提高好牌几率(透视)插件(确实是真的有挂);1、很好的工具软件,可以...
透视工具!aapoker如何设... 透视工具!aapoker如何设置胜率(透视)免费透视脚本(其实有挂)1、该软件可以轻松地帮助玩家将a...
透视总结!aapoker怎么提... 透视总结!aapoker怎么提高中牌率(透视)透视方法(总是是真的有挂)1、起透看视 aapoker...
透视辅助!aapoker破解侠... 透视辅助!aapoker破解侠是真的吗(透视)透视脚本(原来是有挂)一、aapoker破解侠是真的吗...
透视软件!aapoker透视方... 透视软件!aapoker透视方法(透视)透视脚本入口(其实是有挂)1、超多福利:超高返利,海量正版游...
透视教程!aapoker怎么拿... 透视教程!aapoker怎么拿好牌(透视)插件下载(总是是有挂);1、完成aapoker怎么拿好牌透...
透视教学!aapoker发牌逻... 透视教学!aapoker发牌逻辑(透视)透视脚本下载(都是有挂)1、金币登录送、破产送、升级送、活动...
透视教学!aapoker怎么设... 透视教学!aapoker怎么设置抽水(透视)辅助(总是真的是有挂)1、金币登录送、破产送、升级送、活...
透视玄学!aapoker怎么开... 透视玄学!aapoker怎么开辅助器(透视)透视方法(竟然是真的有挂)暗藏猫腻,小编详细说明aapo...