将参数添加到自定义帖子类型的Get_the_Terms

时间:2016-03-30 作者:bmlbml

使用get\\u the\\u terms在自定义帖子类型的分类法中检索术语时,不能传递参数,如下所示:

function custom_cat_function() {
    global $post;
    $args = array(
      \'orderby\'    => \'ID\',
      \'order\'      => \'ASC\',
    );
    $terms = get_the_terms($post->id, \'category\', $args);
    $count = count( $terms );
    if ( $count > 0 ) {
        foreach ( $terms as $term ) {
            echo \'<li>\' . $term->name . \'</li>\';
        }
    }
}
所有文档都指向其他函数,如get\\u terms,但get\\u terms检索分类法中的所有术语,而不仅仅是单个帖子(在循环中)的术语。

如何像上面的例子那样正确地传递参数(我知道上面的例子是不对的,但我将其作为需要实现的基本示例编写)

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

get_the_terms 使用wp_get_object_terms 默认值为按名称升序排序。您可以使用wp_get_object_terms 如果要以不同的方式设置参数,请直接使用。

$args = array(
    \'orderby\' => \'term_id\'
);
$terms = wp_get_object_terms( get_the_ID(), \'category\', $args );

相关推荐

GET_THE_TERMS与wp_GET_POST_TERMS中的奇怪结果

我正在尝试制作一个面包屑函数,但有一个小问题。。。使用时:$categories = get_the_terms( $post->ID, \'product_cat\' ); 我得到了一个循环中使用的类别数组,等等。唯一的问题是它是按字母顺序排列的。(我希望它按层次顺序排列。)经过一番挖掘,我发现了一种替代方法,即使用wp\\u get\\u post\\u terms(),但我肯定遗漏了一些东西,因为当我使用此方法时:$categories = wp_get_post_terms( $p