WP_QUERY自定义字段和订单结果

时间:2017-05-04 作者:dmje

我有以下WP\\U查询:

$custom_query_args = array(
    \'post_type\'         => \'mcg_event\',
    \'posts_per_page\'    => -1,
    \'meta_query\'        => array(
        \'relation\'  => \'AND\',
        array(
            \'key\'   => \'event_status\',
            \'value\' => \'archived\',
        ),
        array(
            \'key\'       => \'event_start_date\',
            \'orderby\'   => \'meta_value_num\',                     
            \'order\'     => \'ASC\',
        )
    ),
);
我想做两件事:

仅获取event\\u状态为的事件archivedevent_start_date我可以单独执行这两个查询中的任何一个,都没有问题,但当我按上述方式将它们组合在一起时,顺序没有任何区别。

我错过了什么?

2 个回复
SO网友:karimeo

对于排序,应该使用查询的orderby参数。所以应该是这样的:

$custom_query_args = array(
    \'post_type\'     => \'mcg_event\',
    \'posts_per_page\'=> -1,
    \'meta_key\'      => \'event_start_date\',
    \'orderby\'       => \'meta_value_num\',
    \'order\'         => \'ASC\',
    \'meta_query\'    => array(
        array(
            \'key\'   => \'event_status\',
            \'value\' => \'archived\',
        ),
    )
);

SO网友:Alok Shrestha

用它来更改代码,可能会帮助您找到所需的内容。这里的问题是我们不能包括key, orderorderby 在里面meta_query. 但如果要根据关键字对结果帖子排序,则可以按如下方式传递查询参数:

$custom_query_args = array(
    \'post_type\'         => \'mcg_event\',
    \'posts_per_page\'    => -1,
    \'order\'             => \'ASC\',
    \'meta_key\'          => \'event_start_date\',
    \'orderby\'           => \'meta_value_num\',
    \'meta_query\'        => array(
        array(
            \'key\'   => \'event_status\',
            \'value\' => \'archived\',
        ),
    )
);

相关推荐

Increase offset while looping

我正在编写一个自定义帖子插件,它将自定义帖子分组显示为选项卡。每组4个岗位。是否可以编写一个偏移量随每次循环而增加的查询?因此,结果将是:-第一个查询显示从1到4的帖子-第二个查询显示从5到8的帖子-第三个查询显示从9到12的帖子等。 <div class=\"official-matters-tabs\"> <?php $args = array(\'post_type\' => \'official-matters\', \'showp