使用WordPress做网站时,怎么在文章页调用顶部父类下所有子分类列表呢?效果如下图:
与在分类页调用顶部父类下所有子分类列表不同,如果要在文章页获取顶部父类下所有子分类列表,需要分二步。
第一步:获取父分类ID的函数,将下面的函数放到functions.php里;
function get_category_root_id($cat)
{
$this_category = get_category($cat);
while($this_category->category_parent)
{
$this_category = get_category($this_category->category_parent);
}
return $this_category->term_id;
}
第二步:获取文章所属顶级分类ID。通过下面的代码来获取文章所属顶级分类ID。
<?php $currecategory =get_the_category();$djcatid = get_category_root_id($currecategory[0]->cat_ID);?>
第三步:通过顶级分类ID获取所有子分类列表。
<?phpwp_list_cats(sort_column=name&optioncount=0&hierarchical=1&hide_empty=0&child_of=.$djcatid.); ?>
第四步:如果想更灵活的应用,可以使用下面的循环代码来显示;
<?php
$cats = get_categories(array(
child_of => $djcatid,
parent => $djcatid,
hide_empty => 0
));
if(!empty($cats)){
foreach($cats as $the_cat){
echo
<li><a href=".get_category_link($the_cat)." class="sl1 slli">.$the_cat->name.</a></li>;
}
}
?>
标签: