WordPress侧边栏调用顶级父类的子类

作者:我就是个世界 发表于:2010-04-28
   在侧栏能显示父类别的子类别,实现的方法如下:

[b]先看下面的结构图:[/b]

产品(根)
   |-- 系列1
   |-- 系列2
   |-- 系列3
      |-- 系列3之系列1
      |-- 系列3之系列2(设为:当前分类)

.....

代码的实现:[separator]
[code]
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号
}
[/code]

如何调用呢? 方法如下:

有了根类的id号,就可以对根类进行操作了。那么这个函数有什么用呢?

有了这个函数,可以这样操作了。。。。。

[code]wp_list_cats(”child_of=” . get_category_root_id($cat) . “&depth=0&hide_empty=0″);[/code]

显示当前分类所属根类的所有分类列表。

当然,此方法亦可用于判断某个分类属于那个分类的子分类(与层数无关)。

这是我自己再设计主题的时候,碰到的一个问题。我的要求是这样的,无论在那个子分类里,左侧都列出与该类相关(同一根类下)的所有分类。有了这个函数,我就可以这样操作了。。。。。

[code]wp_list_cats("child_of=" . get_category_root_id($cat) . "&depth=0&hide_empty=0")[/code]

显示当前分类所属根类的所有分类列表。

当然,此方法亦可用于判断某个分类属于那个分类的子分类(与层数无关)。

类似的函数,可以参考 in_category(n) —— 测试当前分类是否为分类n的子分类。不过功能好像判断上一级,不能是n级。

分享:

扫一扫在手机阅读、分享本文

已有1条评论