tyeocho首页输出全部分类文章时,如何隐藏多个分类不显示?

新手上路,请多包涵

typecho首页 输出全部分类文章时,如何隐藏多个分类?

大概是这样的:

我找到了可以隐藏一个分类的方法

<?php $this->widget('Widget_Metas_Category_List@options','ignore=1')->to($categories); ?>

请问如何隐藏单个以上的分类?

阅读 1.7k
1 个回答
新手上路,请多包涵

要在 Typecho 的首页输出全部分类文章时,同时隐藏多个分类不显示,可以在首页模板文件中使用条件判断来实现。您可以在首页模板文件(一般是 index.php)中添加以下代码来排除不需要显示的分类文章:

<?php while($this->next()): ?>
    <?php 
        // 获取当前文章的分类
        $categories = $this->categories;
        
        // 判断当前文章的分类是否需要隐藏
        $excludeCategories = array('分类1', '分类2', '分类3'); // 需要隐藏的分类
        $showArticle = true;
        foreach ($categories as $category) {
            if (in_array($category['name'], $excludeCategories)) {
                $showArticle = false;
                break;
            }
        }
        
        // 输出文章内容
        if ($showArticle) {
    ?>
        <h2><a href="<?php $this->permalink() ?>"><?php $this->title() ?></a></h2>
        <p><?php $this->content('阅读全文 &raquo;'); ?></p>
    <?php } ?>
<?php endwhile; ?>

在上面的代码中,首先获取当前文章的分类,然后定义一个 $excludeCategories 数组来存放需要隐藏的分类名称。接着使用循环来判断当前文章的分类是否在需要隐藏的分类中,如果是则将 $showArticle 设置为 false,不输出该文章;否则输出文章的标题和内容。

您可以根据实际需求修改 $excludeCategories 数组中的分类名称,以及根据需要调整代码逻辑。这样就可以在 Typecho 的首页输出全部分类文章时,同时隐藏多个分类不显示。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题