我有一个名为“sale_status”的自定义字段,其值(“For Sale”,“Sold”,“Let”)显示在admin的单选按钮中。现在每个人都可以分配到一个属性。
目前,查询按照发布日期提取属性订单,但我希望它是通过sale_status然后是date。
我的代码如下 -
$args = array(
'post_type' => 'zoo-property',
'posts_per_page' => $query__per_page,
'post_status' => 'publish',
'paged' => $query__page,
'meta_key' => 'sale_status',
'orderby' => 'meta_value_num',
'order' => 'DESC',
'meta_query' => array(
'relation' => 'AND',
$query__types,
$query__locations,
$query__statuses,
$query__investments,
$query__price
)
);
$properties_wp_query = new WP_Query($args);
echo "Last SQL-Query: {$properties_wp_query->request}";
但它没有以正确的顺序显示。
非常感谢任何帮助。提前谢谢。
答案 0 :(得分:2)
如果要在同一查询中包含多个排序条件,orderby
值必须是数组。有关详细信息,请参阅WP_Query documentation。尝试这样的事情:
$args = array(
'post_type' => 'zoo-property',
'posts_per_page' => $query__per_page,
'post_status' => 'publish',
'paged' => $query__page,
'meta_key' => 'sale_status',
'orderby' => array( 'meta_value_num' => 'DESC', 'post_date' => 'DESC' ),
'meta_query' => array(
'relation' => 'AND',
$query__types,
$query__locations,
$query__statuses,
$query__investments,
$query__price
)
);