You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在WordPress博客归档页隐藏指定分类(ID=89)

解决WordPress隐藏指定分类(ID89)的问题

1. 隐藏分类列表中的ID89分类

直接在get_categories的参数数组里添加排除规则,获取分类时会自动跳过ID89的分类,自然不会显示它的链接。修改后的代码如下:

<h3>Categories</h3>
<?php
$categories = get_categories( array(
    'hide_empty' => 1,
    'exclude'    => '89' // 添加此行排除ID89的分类
) );
 
foreach( $categories as $category ) {
    $category_link = get_category_link( $category->term_id ); 
?>
<ul>
<li><a href="<?php echo $category_link; ?>"><?php echo $category->name; ?></a></li>

<?php
}
?>
</ul>
</div>

2. 禁止ID89分类的文章出现在主归档页

要确保该分类下的文章不会在博客首页、日期归档、标签归档等主归档区域显示,需要在主题的functions.php文件中添加以下代码:

function exclude_category_from_archives( $query ) {
    // 仅对前台主查询生效,不影响后台和自定义查询
    if ( $query->is_main_query() && !is_admin() && ( $query->is_home() || $query->is_archive() || $query->is_search() ) ) {
        $query->set( 'cat', '-89' ); // 负号代表排除该ID分类下的文章
    }
}
add_action( 'pre_get_posts', 'exclude_category_from_archives' );

这段代码通过修改主查询规则排除目标分类文章,同时不会影响你在网站其他区域(比如自定义模板、专属短代码)调用该分类的文章。

内容的提问来源于stack exchange,提问作者Nic

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 02:47:36