直升机, 我的自定义帖子中有多个meta_key值对。因此,为了解决这个问题,我最初运行了一个WP_QUERY,它创建了一个帖子ID数组,然后我将其传递给加载更多以加载它们。
我使用WP_Query构建的数组的顺序正确。但是,当我在post_in参数中使用ID时,它不会按给定的顺序显示它们。我也试过给orderby="meta_value_num"
参数,但它也不起作用。
这是完美的WP_QUERY
$loop = new WP_Query(
array(
'post_type' => 'properties',
'posts_per_page' => -1,
'meta_query' => array(
array(
'key' => 'listing_type',
'value' => array(3,2),
'type' => 'NUMERIC',
),
array(
'key' => 'payment_status',
'value' => 'yes',
),
array(
'key' => 'expired',
'value' => 'no',
- ),
),
'orderby' => 'meta_value_num',
'meta_key' => 'listing_type',
'order' => 'DESC'
));
这是短代码:
[ajax_load_more post_type="properties" post__in="'.implode(',',$featured).'" posts_per_page="10" scroll="false" transition="fade" button_label="'.$l_more.'" button_loading_label="'.$l_more_2.'" container_type="ul" css_classes="items",orderby="meta_value_num" meta_key="listing_type"]
然而它并没有按照它应该订购帖子,因为$ featured数组按要求的顺序排列。即使我删除了order by和meta_key参数,它也不起作用。
请帮助 艾哈迈尔
答案 0 :(得分:1)
首先,您的短代码中有错误。
[ajax_load_more post_type="properties" post__in="'.implode(',',$featured).'" posts_per_page="10" scroll="false" transition="fade" button_label="'.$l_more.'" button_loading_label="'.$l_more_2.'" container_type="ul" css_classes="items" orderby="meta_value_num" meta_key="listing_type"]
其次,您应orderby="post__in"
保留post__in
顺序。
https://codex.wordpress.org/Class_Reference/WP_Query#Order_.26_Orderby_Parameters