调用WordPress父子分类目录

发布时间:2020-05-06

在当前分类或者正文页面想调用显示与当前分类存在父子关系的分类目录时会用到。

代码一:

将下面代码加到主题模板适当位置,比如侧边栏:

  1. <?php
  2.     $current = “”;
  3.     if(is_single()){
  4.         $parent = get_the_category();
  5.         $parent = $parent[0];
  6.         $current = “&current_category=”.$parent->term_id;
  7.     }else if(is_category()){
  8.         global $cat;
  9.         $parent = get_category($cat);
  10.     }
  11.     if($parent->category_parent != 0){
  12.         $cat_id = $parent->category_parent;
  13.         $parent = get_category($cat_id);
  14.         if($parent->category_parent != 0){
  15.             $cat_id = $parent->category_parent;
  16.         }else{
  17.             $cat_id = $parent->term_id;
  18.         }
  19.     }else{
  20.         $cat_id = $parent->term_id;
  21.     }
  22. ?>
  23. <?php if(!is_page()) { ?>
  24.     <h3><?php echo $parent->cat_name; ?><span><?php echo $parent->slug; ?></span></h3>
  25.     <ul id=“cat_list”>
  26.         <?php wp_list_categories(“title_li=&child_of=$cat_id”.$current); ?>   
  27.     </ul>
  28. <?php } ?>

代码二:

将下面代码加到主题function.php模板文件中:

  1. function get_category_root_id($cat)
  2. {
  3.     $this_category = get_category($cat); // 取得当前分类
  4.     while($this_category->category_parent) // 若当前分类有上级分类时,循环
  5.     {
  6.         $this_category = get_category($this_category->category_parent); // 将当前分类设为上级分类(往上爬)
  7.     }
  8.     return $this_category->term_id; // 返回根分类的id号
  9. }

调用显示代码加到主题模板的适当位置:

  1. <?php
  2.     if(is_category())
  3.     {
  4.         if(get_category_children(get_category_root_id(the_category_ID(false)))!= “” )
  5.         {
  6.             echo ‘<ul>’;
  7.             echo wp_list_categories(“child_of=”.get_category_root_id(the_category_ID(false)). “&depth=0&hide_empty=0&title_li=&orderby=id&order=ASC”);
  8.             echo ‘</ul>’;
  9.         }
  10.     }
  11. ?>

 

大熊wordpress凭借多年的wordpress企业主题制作经验,坚持以“为用户而生的wordpress主题”为宗旨,累计为2000多家客户提供品质wordpress建站服务,得到了客户的一致好评。我们一直用心对待每一个客户,我们坚信:“善待客户,将会成为终身客户”。大熊wordpress能坚持多年,是因为我们一直诚信。我们明码标价(wordpress做网站需要多少钱),从不忽悠任何客户,我们的报价宗旨:“拒绝暴利,只保留合理的利润”。如果您有网站建设、网站改版、网站维护等方面的需求,请立即咨询右侧在线客服或拨打咨询热线:18324743309,我们会详细为你一一解答你心中的疑难。

相关文章

写给所有做网站的朋友的一封信

写给所有做网站的朋友的一封信

现在就开始执行“1+N”互联网推广和没有开始执行的人,一两天看不出任何区别; 一两个月看来差异也是微乎其微的;但在2-5年的长远时间来看的时候,你的高质量询盘不断增加,你的互联网资产已经建立完成,对手已经很难匹敌,现在你看到这段文字的时候就是最好的开始,现在就是最好的时候,马上开始“1+N”体系的整体互联网推广吧,我们和你一起,开创互联网大未来!

点击查看详情

准备开启WordPress网站建设推广?

我们相信高端漂亮的网站不应该是昂贵的,这就是wordpress对每个人都是免费的原因
wordpress建站免费入门,并提供价格合理的wordpress建站套餐。