Get_Terms()Order by Term_Meta

时间:2018-09-03 作者:user319940

我正在做一个get_terms() 我试图按自定义术语元排序的查询。自定义术语元键是\'order\' 它是一个数值(介于1和10之间)。我尝试了以下方法,但顺序似乎没有遵循元值-任何指针都是值得赞赏的。

$type_terms = get_terms( \'type\', array(
    \'hide_empty\' => false,
    array(
        \'key\' => \'order\',
    ),
    \'orderby\' => \'meta_value_num\',
    \'order\' => \'ASC\',
) );

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

顺序似乎不符合元值

是的,这是因为您这样设置了元键:(实际上并没有设置元键)

array(
  \'key\' => \'order\',
),
正确的方法是使用meta_key 参数:

\'meta_key\' => \'order\'
所以完整的代码是:

$type_terms = get_terms( \'type\', array(
    \'hide_empty\' => false,
    \'meta_key\' => \'order\',
    \'orderby\' => \'meta_value_num\',
    \'order\' => \'ASC\',
) );
有关更多信息,请参阅WP_Term_Query::__construct(), 由get_terms() 作用

结束

相关推荐

Get_the_Terms()未返回预期结果

我已经创建了3个自定义分类法来标记我的帖子。我单身。php模板我正在尝试计算术语的数量,使用get_the_terms() 对于分配给帖子的每个自定义分类法,但它并没有产生我所期望的结果。我有两个自定义分类法,分别称为“大小”和“颜色”,我从这些分类法中得到的术语数量如下:<?php $sizeCount = count(get_the_terms($post->ID, \'sizes\')); $colorCount = count(get_the_terms