0

类别 1
- 2 级类别
- 3 级类别
- 4 级类别
- 2 级类别
- 3 级类别
- 4 级类别
- 2 级类别
- 3 级类别
- 4 级类别

如何show_count=1使用 using仅显示列表中的第 4 级类别get_categories

好吧,到目前为止,我正在使用我从其他来源获得的这段代码

<ul>
<?php wp_list_categories('child_of=2796&hide_empty=0&taxonomy=product_cat&title_li=red&depth=3&show_count=1'); ?>
</ul>

它显示了这个

Wine
  red
    Barbera (7)
        Barbera (7)  <-  last category
    Bonarda (2)
        Bonarda (2)  <-  last category
    Bordeaux Blend (15)
        Cabernet Franc (6)  <-  last category
        Cabernet Sauvignon (14)  <-  last category
        Merlot (15)  <-  last category
        Petit Verdot (3)  <-  last category
    Cabernet Franc (4)
        Cabernet Franc (4)  <-  last category
    Cabernet Sauvignon (29)
        Cabernet Sauvignon (29)  <-  last category

我需要它只显示所有最后一个类别的列表

    Barbera (7)
    Bonarda (2)
    Cabernet Franc (6)
    Cabernet Sauvignon (14)
    Merlot (15)
    Petit Verdot (3)
    Cabernet Franc (4)
    Cabernet Sauvignon (29)

很抱歉造成混乱,我不擅长这个:-(

4

2 回答 2

1

你能再解释一下吗?show_count=1 和您的自定义函数 get_categories() 对我来说并不重要。请添加您的脚本代码。

乍一看,我会说你最好将所有类别放在一个数组中。例如:

$categories = array(
"level1" => array(1 => "level 1.1", 2 => "level 1.2"),
"level2" => array(1 => "level 2.1", 2 => "level 2.2", ...)
...
);

接下来,您可以通过将其寻址为 $categories[x][4] 来获得第 4 级(其中 x = 您要处理的类别的编号)

于 2013-07-22T07:50:38.740 回答
0

我想我可能已经为您找到了解决方案!

你的 wp_list_categories 应该是这样的:

<ul>
<?php wp_list_categories('orderby=name&include=3,5,9,16'); ?> 
</ul>

它按名称对您的类别进行排序,并且仅按其 ID 包括某些类别。因此,从上面它只会列出 ID 为:3、5、9 和 16 的类别

exclude如果需要更长的时间来写出包含,您也可以进行分类。因此,假设您的includeID 多于exclude,然后使用&exclude=6,11。它将排除 ID 为 6 和 11 的类别。

除非您为它编写插件,否则我认为没有更简单的解决方案!

您可以通过阅读此http://codex.wordpress.org/Template_Tags/wp_list_categories#Include_or_Exclude_Categories了解更多信息

于 2013-07-23T08:27:54.007 回答