通过post meta对WP_Query结果进行排序

时间:2013-08-10 19:57:02

标签: wordpress metadata custom-post-type

如果meta看起来像这样,可以通过post meta对WP_Query结果进行排序:

meta_key:_file_details

meta_value: {     “file_sort_order”:“2”,     “file_description”:“aaa”,     “file_enabled”:“true”, }

因此,我需要能够按帖子类型获取自定义帖子,按帖子元值'file_sort_order'排序。

1 个答案:

答案 0 :(得分:2)

来自WP_Query's page的代码:

'meta_value' - 请注意,查询中还必须包含'meta_key = keyname'。另请注意,排序将按字母顺序排列,对于字符串(即单词)来说很好,但对于数字可能是意外的(例如1,3,34,4,56,6等,而不是1,3,4,6,正如你自然期望的那样,34,56)。使用'meta_value_num'代替数值。 'meta_value_num' - 按数字元值排序(与2.8版一起提供)。另请注意,查询中还必须存在“meta_key = keyname”。该值允许进行数值排序,如上面'meta_value'中所述。

 $my_query = new WP_Query( array( 
                        // 'post_type' => 'post_type_name',
                        'meta_key' => 'key_name',
                        'orderby' => 'meta_value_num'
                        )); 

您可以在同一链接上查看订单参数。