也想出现在这里?联系我们

WordPress 分类归档排除子分类文章

2024.01.12 wordpress教程
  • 文章介绍
  • 升级版本
  • 评价&建议

要在WordPress分类归档中排除子分类文章,您可以通过修改查询来实现这一目标。您可以使用 pre_get_posts 钩子来自定义WordPress查询。

以下是一种方法,您可以在主题的 functions.php 文件中添加以下代码:

function exclude_subcategory_posts( $query ) {
    if ( $query>is_category() && $query>is_main_query() ) {
        $cat_id = $query>get_queried_object_id();
        $children = get_term_children( $cat_id, 'category' );

        // If the category has children (subcategories), exclude posts from subcategories
        if ( ! empty( $children ) ) {
            $child_cat_ids = array_map( 'intval', $children );
            $query>set( 'category__not_in', $child_cat_ids );
        }
    }
}
add_action( 'pre_get_posts', 'exclude_subcategory_posts' );

这个函数会检查当前是否在分类归档页面,并且分类有子分类。如果有子分类,它将排除子分类的文章。请确保将 category 替换为您实际在WordPress中使用的分类法名称(可能是不同的分类法名称,如 product_category 等)。

在代码中,我们首先检查是否在分类归档页面,然后获取当前分类的子分类。如果有子分类,我们将这些子分类的ID添加到查询参数中,以排除这些子分类的文章。

有用0
  • 2024.01.12初次和大家见面了!

等待您对该主题的建议

发表评论

还能输入240个字

Hi, 欢迎加入Wordpress技术交流群,带你装逼带你飞!

我要入群
也想出现在这里?联系我们
wordpress加速

我来推荐一个更牛逼的给你看看?

  • 猛戳我吧