WP_GET_OBJECT_TERMS-如何按层次结构对结果数组进行排序?

时间:2011-03-17 作者:Jonathan Wold

我将通过wp\\u get\\u object\\u术语返回一个自定义的层次分类法。

问题在于,结果是按名称或计数排序的,而事实证明两者都不可靠。(我对“位置”(城市、州、国家)使用自定义分类法,有时州出现在城市之前)

有没有办法按自定义分类层次结构对结果数组进行排序?

也许,我应该用另一种方式来看待这个问题吗?

2 个回复
最合适的回答,由SO网友:kaiser 整理而成

只是一个粗略的草图来了解您的想法:

法国(国家-亚分类法)香槟(州-亚分类法南特(城市-学期)您想要订购:

$query_results = query( \'country\' => \'france\', \'orderby\' => \'state city\', \'order\' => \'ASC\' );
我做对了吗?如果没有,请随时编辑我的答案或更新您的问题。

SO网友:Mark Duncan

你可以使用wp_list_categories 为了整理层次结构,它从3.0开始支持分类法。

您可以看到一个使用自定义分类法的示例wp_list_categoriescodex page 对于函数。

你只需要从你的wp_get_object_terms 呼叫wp_list_categories 包括arg,例如。

wp_list_categories( array( \'include\' => $your_array_of_ids ) );
然后,它应该以层次格式列出自定义分类法的术语,但如果主题没有填充列表元素,则可能不会这样显示(因此,如果结果没有以层次形式显示,请确保应用适当的样式)。

结束

相关推荐

Saving Taxonomy Terms

我有一个有趣的问题,希望有人能尽快回答。我已经创建了自己的metabox,它基于“我的metabox代码”(下面的列表)正确地显示了我创建的“event\\u types”分类中所有术语的下拉列表。我遇到的问题是,当从下拉列表中选择不同的术语并更新帖子时,能够保存/更新与帖子相关的术语。在对各种代码位进行修补之后,我发现通过手动将term\\u ID number[用逗号分隔]输入数组区域,我得到了我想要的结果。例如,如果在保存帖子时,函数将调用此代码wp_set_post_terms( $post_id