我的博客中有很多分级的分类结构,于是就想在一个分类的归档页面头部显示出该分类的子分类结构,当然只有在该分类有子分类的时候才会显示。如何判断一个分类是否有子分类的方法在上一篇文章中我已经分享过:WordPress 判断当前分类是否含有子分类 。网上的很多教程都是显示父分类的结构,但针对我的需求并没有相关的方法,这里呢我就分享一下我使用的方法,效果就像这篇文章的首图那样咯。
二话不说先给出代码(PHP语言):
将这部分代码复制粘贴到你使用的主题目录下的 archive.php 文件中的显示分类描述的图像部分的“” 中即可,例如我用的是 twentyseventeen 主题,在主题目录下的 archive.php 文件中有这样的代码:
那我就可以将刚才的代码复制到这个位置了。当然你要根据自己使用的主题和要显示列表的位置来插入代码了。
代码说明
这段代码主要就是用到 WordPress 提供的 函数。该函数的官方文档在这里。该函数的功能就是显示或获得HTML形态的分类列表。这个函数的参数是一些对返回结果的选项设置,如下:
$ args
(string | array) (可选) 可选的数组或者字符串参数。
‘childof’
_(int)用于查找某个父分类的子分类的父分类 term ID。请参阅 get_terms()。默认值为0。
‘currentcategory’
_(int | array)应该获得 ‘current-cat’ 类的分类 ID或分类 ID数组。默认值为 0。
‘depth’
(int)分类深度。用于制表符缩进。默认值为0。
‘echo’
(bool | int)True表示直接 echo(输出) 检索后的列表结果,false表示返回列表结果不做输出。默认1(True)。
‘exclude’
(array | string)要排除的 term ID,数组或逗号/空格分隔的字符串形式。如果 为 True, 则也将排除 term的后代; 看 。请参阅get_terms()。
‘excludetree’
_(array | string)要排除的 term ID 及其后代,数组或逗号/空格分隔的字符串形式。请参阅get_terms()。
‘feed’
(字符串)用于 feed 订阅链接的文本。默认’Feed for all posts filed under [cat name]’。
‘feedimage’
_(字符串)用于 feed 链接的图像的URL。
‘feedtype’
_(字符串)Feed类型。用于构建 Feed链接。请参阅get_term_feed_link()。默认空字符串(默认Feed)。
‘hideempty’
_(bool | int)是否隐藏没有文章的分类。默认1。
‘hide_title_ifempty’
_(bool)如果列表中没有分类(即该分类没有子分类),是否隐藏列表标题元素 。默认为 false(将始终显示标题)。
‘hierarchical’
(bool)是否包含具有非空子分类的分类。请参阅 get_terms()。默认为 true。
‘order’
(字符串)分类列表排序的方向。接受 ‘ASC’(升序)或’DESC’(降序)。默认’ASC’。
‘orderby’
(字符串)用于排序分类列表的列。默认是 ‘ 分类名 ‘。
‘separator’
(字符串)链接之间的分隔符。默认'
’。
‘showcount’
_(bool | int)是否显示该类别中的文章数量。默认值为0(不显示)。
‘show_option_all’
(字符串)显示用于所有分类的文本的内容。
‘show_option_none’
(字符串)用于‘无分类’选项的文本。默认’无分类’。
‘style’
(字符串)用于显示分类列表的样式。如果是’list’,则分类将作为无序列表输出。如果保留为空或其他值,则分类将以 标记分隔输出。默认’list’。
‘taxonomy’
(字符串)分类法名称。默认’分类’。
‘titleli’
_(字符串)用于列表标题 元素的文本。传递空字符串以禁用。默认’分类’。
‘use_desc_fortitle’
_(bool | int)是否使用分类的描述作为链接的 title 属性。默认1。
大家可以根据这些参数来自定义显示的列表,建议在自定义前先看懂每个参数的意义。
温馨提示
领取专属 10元无门槛券
私享最新 技术干货