typecho调用CMS列表并隐藏多个分类方法

  魔改这个主题时就尝试了Typecho调用分类CMS列表并隐藏多个分类,但由于自己小白,一直没能实现。前两天一个用了这主题的网友(目的地-Destination)解决了这一问题。

  原文链接:https://blog.chrison.cn/work/77.html

主题配置文件

  functions.php 文件中 function themeConfig($form) { } 中添加以下变量函数代码:

    $nolist = new Typecho_Widget_Helper_Form_Element_Text('nolist', NULL, NULL, _t('首页不显示某特定分类'), _t('仅用在首页,首页不显示某分类,填入<b style="color: red;">mid</b>数字,隐藏多个分类用半角逗号分开!!!'));
    $form->addInput($nolist); 

  需要隐藏的多个id,配置在后台的外观设置处。

typecho隐藏多个分类设置
图:typecho隐藏多个分类设置

index.php 文件


<?php
    $this->widget('Widget_Metas_Category_List@options')->to($categories);
    $ignoreMidArr = explode(',', $this->options->nolist);
?>
<?php while ($categories->next()): ?>
    <?php if (!in_array($categories->mid,$ignoreMidArr)): ?>
      <a href="<?php $categories->permalink(); ?>"><?php $categories->name(); ?></a>
    <?php endif; ?>
<?php endwhile; ?>    

具体使用

  只提供一个思路,具体视自己主题进行修改。提醒!!!先备份!!!

~ ~  本文结束,喜欢请点赞+分享  ~ ~


 赏 
感谢您的支持,我会继续努力哒!
支付宝收款码
tips
(*) 6 + 7 =
本文共 3 条评论。您也快来参与吧!
    2022年12月17日 江苏省苏州市 发自Mac OSX 回复 0

    可以可以。比我的简洁多了。。。我倒是把主题的配置忘记写了

      2022年12月17日 湖北省武汉市 发自Windows 10 回复 0

      被你抓到我剽窃了……😜

        2022年12月17日 江苏省苏州市 发自Mac OSX 回复 0

        哈哈哈,反正都是怕自己忘了咋改的。。。也给别人踩个坑。