Wordpress按所选自定义字段对帖子进行排序

时间:2016-08-19 07:48:32

标签: wordpress

我想按custom posts type自定义字段对某些ACF select进行排序。我从ACF文档中尝试了它,但它没有工作,结果以相同的顺序出现。 选择字段包含1到30之间的数字,它们应代表帖子的位置。 我的query args代码:

$args = array(
    'post_type'         => 'opalsgevent_speaker',
    'posts_per_page'    => $count,
    'meta_key'          => 'ordine',
    'orderby'           => 'meta_value',
    'order'             => 'ASC'
);

2 个答案:

答案 0 :(得分:0)

首先,我会检查meta_key名称是否正确。

接下来:也许它们已经分类但不符合您的预期。来自WP_Query documentation

  

'meta_value' - (...)排序将按字母顺序排列,对字符串(即单词)很好,但对于数字可能是意外的(例如1,3,34,4,56,6等,而不是正如您自然期望的那样,而不是1,3,4,6,34,56)。使用'meta_value_num'代替数值。

所以不是meta_value而是meta_value_num

答案 1 :(得分:0)

您可以尝试使用' meta_value_num"而不是meta_value':

'orderby'   => 'meta_value_num',

https://codex.wordpress.org/Class_Reference/WP_Query#Custom_Field_Parameters