Typecho设置不同分类与详细页模板方法

首页在模板目录建立一个 category 文件夹,将分类模板文件放到这个目录内,如 Prints.php

以下是分类模板样本:

need('header.php'); ?> 头部

have()): ?> 不可删

next()): ?> 不可删

content(); ?>

结尾

need('footer.php'); ?> 底部

然后在后台创建分类,分类的缩略名必需是分类模板的名字如分类模板名为Prints.php那么分类缩略名必需是Prints才行。然后在post.php页调用以下代码。

category == 'blog') { ?>

title() ?>

author(); ?> date('F j, Y'); ?>
content('Continue Reading...'); ?>

options->sidebarBlock) || in_array('ShowRecentPosts', $this->options->sidebarBlock)): ?>

need('footer.php'); ?>

category == 'zhoupin') { ?>

content(); ?>

need('footer.php'); ?>

category == 'Prints') { ?>

content(); ?>

need('footer.php'); ?>

category == 'News') { ?>

title() ?>
date('F j, Y'); ?>

content(); ?>

options->sidebarBlock) || in_array('ShowRecentPosts', $this->options->sidebarBlock)): ?>

need('footer.php'); ?>

创建分类方法二

一、不同分类输出不同模板

先在当前模板目录下建立一个 category 目录,然后比如你要给 slug 为 default 的分类专门建立模板,那么就在 category 目录下创建一个名为 default.php 的文件,这样程序在访问 default 分类时会自动调用这个模板文件。

使用 $this->categories 和 $this->category 这两个变量就可以满足你的需要了,不过需要你自己手动循环输出。你可以 print_r 一下这两个变量,看看它们的结构。

二、post页调用方法

category == "分类A的缩略名"): ?> 固定给某一个分类的模板

// 这里是分类A的样式

category == "分类B的缩略名"): ?> 固定给某一个分类的模板可添加N个,只需复制即可

// 这里是分类B的样式

// 这里是分类C的样式 这里写的是通用模板样式

附:分类名称调用

category(','); ?> //带连接的分类名称,逗号为多分类时的间隔符

category(',', false); ?> //不带连

发表新评论