Determine Term depth

时间:2013-11-22 作者:Eric Holmes

我希望能够在它的层次结构树中找到一个术语的深度。

Produce
-- Vegetables
---- Carrot
---- Onion
---- Celery
-- Fruit
---- Apple
------ HoneyCrisp
----Orange
产品为0级(或1级)、水果为1级、苹果为2级、蜜饯为3级等。

理想的用法是$depth = get_term_depth( $term_id );. 有人对此有经验吗?

我本质上希望根据术语归档页面上的深度进行不同的渲染。

1 个回复
最合适的回答,由SO网友:Eric Holmes 整理而成

我不想打击我的声誉,但我找到了自己的答案。get_ancestors 允许您获取任何项目的层次结构。由于术语只能有一个父级,因此我们只需要这样做:此列表中的项目数等于术语深度级别,甚至提供术语ID。

用法:

$ancestors = get_ancestors( $term_id, \'custom-taxonomy-slug\' );
print_r( $ancestors ) ; // array( 0 => 15, 1 => 45 ) - 3rd level term

结束

相关推荐

GET_POST_TERMS未按预期工作

我有一个称为“水果”的自定义帖子类型,在这个类型下,我有一个称为“水果类别”的层次分类法当我在Fruit下创建一个新帖子时,我可以将其分配到一个“术语”,就像您在普通帖子类别下一样,但在Fruit Categories分类下。我在Fruit上增加了三个职位,每个职位分别分配给一个任期;“苹果”、“梨”和“香蕉”。所有这些都很好,但现在我想创建一个归档页面,简单地列出UL中的术语,用于自定义帖子类型,如下所示;我的网站。玉米/水果我面临的问题是,我使用的每个查询似乎只返回第一个词Apples。其他两个没有显