分类模板

当访问者单击指向类别、标签或自定义分类法的超链接时,WordPress会按按分类法过滤的时间倒序显示一页文章。

默认情况下,此页面是使用索引.php模板文件。您可以创建可选的模板文件来覆盖和细化索引.php模板文件。本节介绍如何使用和创建此类模板。

分类模板层次结构

WordPress按照由模板层次结构.

这个类别.php,标签.php、和分类学.php模板允许发布已过滤按分类法区别对待未过滤的岗位或岗位按不同分类筛选。(注意:帖子是指任何帖子类型——帖子、页面、自定义帖子类型等)。这些文件使您可以针对特定的分类法或特定的分类术语。例如:

  • 分类学-{分类}-{术语}.php
  • 分类法-{分类法}.php
  • 标记-{slug}.php
  • 标记-{id}.php
  • 类别-{slug}.php
  • 类别-{ID}.php

因此,您可以在一个名为新闻在与其他类别中筛选的帖子外观不同的页面上。

这个存档.php模板提供了最通用的控制形式,为所有档案提供了布局;也就是说,显示帖子列表的页面。

类别

对于类别,WordPress查找类别-{slug}.php文件。如果不存在,WordPress会查找下一个层次结构级别的文件,类别-{ID}.php等等。如果WordPress找不到任何专门的模板或存档.php模板文件,它恢复为默认行为,使用索引.php.

类别层次结构如下所示:

  1. 类别-{slug}.php:例如,如果类别的slug名为“news”,WordPress将查找名为分类-新闻.php。
  2. 类别-{ID}.php:例如,如果类别的ID为“6”,WordPress将查找名为类别-6.php。
  3. 类别.php
  4. 存档.php
  5. 索引.php

标签

对于标签,WordPress会查找标记-{slug}.php文件。如果它不存在,WordPress会查找下一个层次级别的文件,标记-{ID}.php等等。如果WordPress找不到任何专门的模板或存档.php模板文件,它将恢复为默认行为,使用索引.php.

标记层次结构如下所示:

  1. 标记-{slug}.php:例如,如果标记的slug名为“sometag”,WordPress将查找名为标签-计量表.php。
  2. 标记-{id}.php:例如,如果标签的ID是“6”,WordPress会查找一个名为标记-6.php.
  3. 标签.php
  4. 存档.php
  5. 索引.php

自定义分类

自定义分类层次结构的工作方式与上面描述的类别和标记层次结构类似。WordPress查找分类学-{分类}-{术语}.php文件。如果不存在,WordPress会查找下一个层次结构级别的文件,分类法-{分类法}.php等等。如果WordPress找不到任何专门的模板或存档.php模板文件,它将恢复为默认行为,使用索引.php.

自定义分类的层次结构如下所示:

  1. 分类学-{分类}-{术语}.php:例如,如果分类法名为“sometax”,分类法的术语为“someterm”,WordPress将查找名为分类计量学.php.
  2. 分类法-{分类法}.php:例如,如果分类名为“sometax”,WordPress将查找名为分类学-metax.php
  3. 分类学.php
  4. 存档.php
  5. 索引.php

创建分类模板文件

现在您已经决定需要根据分类法为内容创建自定义设计,从哪里开始?

与其从一个空白文件开始,不如这样做复制层次结构中的下一个文件,如果存在。如果您已经创建了存档.php,制作一个名为类别.php并根据您的设计需要进行修改。如果你没有存档.php文件,使用主题的副本索引.php作为起点。

如果要创建任何分类法模板文件,请遵循相同的过程。使用您的存档.php,类别.php,标签.php,或索引.php作为起点。

示例

现在您已经选择了主题目录中需要修改的模板文件,让我们来看一些示例。

将文本添加到类别页面

帖子上方的静态文本

假设您希望在类别页面上的帖子列表之前显示一些静态文本。“静态”是保持不变的文本,无论下面显示的是哪些帖子,也无论显示的是哪个类别。

打开您的文件及以上内容循环部分,插入以下代码:

<p>这是一些将显示在“类别”页面顶部的文本</p>(第页)

此文本将仅显示在显示该类别文章的存档页面上。

某些类别页面上的不同文本

如果您想根据访问者使用的类别页面显示不同的文本,该怎么办?您可以将默认文本添加到主类别.php文件,并创建特殊类别-{slug}.php每个文件都有自己的文本版本,但这会在主题中创建大量文件。相反,您可以使用条件标记.

同样,此代码将添加到循环之前:

<?php if(is_category(“A类”)):?><p>这是描述类别A的文本</p><?php elseif(is_category(“B类”)):?><p>这是描述B类的文本</p><?php其他:?><p>这是一些描述所有其他类别页面的通用文本,我可以留白</p>(第页)<?php-endif;?>

此代码执行以下操作:

  1. 检查访客是否请求了类别A。如果是,则显示第一段文本。
  2. 如果用户没有请求类别A,则检查类别B。如果是,则显示第二段文本。
  3. 如果没有请求默认文本,则显示默认文本。

仅在存档的第一页显示文本

如果你的帖子超过了档案中一页的容量,那么该类别将被拆分为多个页面。如果用户位于结果的第一页,那么您可能希望显示静态文本。

为此,请使用一个PHP if语句查看$paged WordPress变量的值。

将以下内容置于the Loop之上:

<?php如果($paged<2):?><p>类别存档第一页的文本</p>(第页)<?php-endif;?>

此代码询问显示的页面是否为存档的第一页。如果是,则显示第一页的文本。否则,将显示后续页面的文本。

修改帖子的显示方式

摘录与全文

你可以选择是显示完整的帖子还是只显示摘录。通过显示摘录,可以缩短存档页面的长度。

打开文件并查找循环。寻找:

内容()

并替换为:

外部(_E)

如果您的主题正在显示摘录,但您想显示完整内容,请替换Exchange(_E)具有_内容.