Typecho博客程序创建自定义模板的方法
宝宝网址导航需要用到自定义模板,然后页面引用。比如青少年教育导航这一页,用到了Typecho的永久链接修改以及本文要讲的创建自定义模板的方法。这里要细分为自定义首页 index 模板、自定义页面 page 模板和自定义分类 category 模板。下面具体说明。
自定义首页模板
在当前模板目录下面建你需要的文件(例如:home.php),然后再文件的开头加上如下代码(需在 package 后面加上 index)就算是自定义了好了一个首页:
<?php
/**
* 自定义首页模板
*
* @package index
*/
/**
* 自定义首页模板
*
* @package index
*/
然后进入后台的『设置』-『文章』页面,选择“站点首页”中的“直接调用[home.php]模板文件”,保存即可。
自定义页面(page)模板
只需要在当前模板目录下面建你需要的文件,然后再文件的开头加上如下代码(需在 package 后面加上 custom)就算是自定义了好了一个页面,可以自定义多个页面:
<?php
/**
* 自定义页面模板
*
* @package custom
*/
/**
* 自定义页面模板
*
* @package custom
*/
其中 @package custom 是必须的,然后进入后台在『创建页面』的【展开高级选项】里就可以看到
自定义分类模板
直接在当前模板目录下建立一个名为 category 的目录,然后在里面放上以你需要单独做模板分类的缩略名为文件名的 php 文件,比如 default.php,这样,在访问缩略名为default的分类时,它会自动调用这个模板。
在模板文件中使用 is 语法判断页面
<?php if ($this->is('category', 'default')): ?>
//默认分类模板
<?php endif; ?>
<?php if ($this->is('category', 'category2')): ?>
//分类2模板
<?php endif; ?>
//默认分类模板
<?php endif; ?>
<?php if ($this->is('category', 'category2')): ?>
//分类2模板
<?php endif; ?>
而在文章或其他页面判断分类显示不同样式的话,请参考http://d.lcz.me/4.html
自定义页面列表显示条数
模板目录下建立一个名为 functions.php 的文件 然后里面写一个函数(示例是控制 jobs 分类下的文章列表显示条数为 10 条)
function themeInit($archive) {
if ($archive->is('category', ‘jobs’)) {
$archive->parameter->pageSize = 10; // 自定义条数
}
}
if ($archive->is('category', ‘jobs’)) {
$archive->parameter->pageSize = 10; // 自定义条数
}
}
灵活利用,很有前途的。
相关阅读: