Typecho设置不同分类与详细页模板方法 - 资本家

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

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

以下是分类模板样本:

need('header.php'); ?> 头部
have()): ?> 不可删
<?php while($this->next()): ?>   不可删 

content(); ?>

<?php endwhile; ?>   结尾

<?php else: ?>

<?php endif; ?>
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); ?> //不带连

上一篇 给小孩买什么保险好Typecho 各种调用 下一篇