WP_Query - 多个自定义文章类型并按自定义元排序

15
我愿意从两个自定义文章类型中获取结果,并按照自定义元数据(事件开始日期)对它们进行排序。
这段代码:
$warsztaty_q = new WP_Query(array(
    'post_type' => array('kalendarium', 'warsztaty'),
    'order_by' => 'meta_value',
    'meta_key' => 'data_start',
    'order' => 'ASC'
));

首先按字母顺序排序是没问题的,但是查询结果中首先排列的是"kalendarium"类别的文章,然后是"warsztaty"类别的文章,而不是把它们混合在一起。

我找到了这个解决方案:https://wordpress.stackexchange.com/questions/71576/combining-queries-with-different-arguments-per-post-type,但是我无法获取自定义meta信息:(

有人能帮助我吗?:)


"data_start" 是两种文章类型共享的吗? - iEmanuele
是的,“data_start”在两种帖子类型中都存在。 - martin_682
1个回答

31

使用orderby代替order_by

$warsztaty_q = new WP_Query(array(
    'post_type' => array('kalendarium', 'warsztaty'),
    'orderby' => 'meta_value',
    'meta_key' => 'data_start',
    'order' => 'ASC'
));

请参考codex了解更多细节


兄弟!你是我的大师!:D 非常感谢。我在许多示例中看到了order_by,所以我认为这是正确的方法 :) - martin_682

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接