Typecho Wiki

typecho不同分类调用不同模板的方法

Typecho维基君开发日志 • 390次浏览 • 发布 2021-08-24 • 更新 2021-08-24
极致加速的V2Ray 助您畅享全球网络

category.php是typecho分类页面模板文件,typecho的分类列表页面统一调用该模板文件,那么对于需要实现不同的分类页面使用不同显示方式的网站怎么办?方法是可以通过自定义分类模板或者使用 is 语法判断分类页面。

方法一:自定义分类模板

把不同分类的模板文件以分类缩略名命名,如default.php、technology.php(缩略名请在后台——管理——分类中查看),然后在当前模板目录下建立一个名为 category 的文件夹,把不同分类的模板文件放进该文件夹,这样,在访问分类页面时,会自动调用分类对应缩略名的分类模板。

方法二:在模板文件中使用 is 语法判断页面

1、缩略名为default的分类调用default.php模板文件,其余分类调用other.php模板文件

<?php 
    if($this->is('category','default')){
        $this->need('default.php');
    }else{
        $this->need('other.php');
    }
?>

2、缩略名为default的分类调用default.php模板文件,缩略图为technology的调用technology.php模板文件,如此类推,其余的调用other.php模板文件

<?php 
    if($this->is('category','default')){
        $this->need('default.php');
    }elseif($this->is('category','technology')){
        $this->need('technology.php');
    }else{
        $this->need('other.php');
    }
?>

3、缩略图为default、technology的调用default.php文件,其余的调用other.php模板文件

<?php 
$slugArray = array('default','technology');
foreach($slugArray as $slug){
    if($this->is('category',$slug)){
        $this->need('default.php');
    }else{
        $this->need('other.php');
    }
}
?>

上面三种是常用的方法,有需要的博主可以举一反三!

本文检索关键词:开发日志
厂商投放

【腾讯云】爆款2核2G云服务器首年40元 首购最高获赠300元京东卡

腾讯云双十一采购节,云服务器多种机型限时抢购,2核2G首年40元,4核8G首年211元,专业技术7*24小时在线服务,腾讯云为企业和个人提供快捷,安全,稳定的云服务!

广告
添加新评论 »