2016-04-18 82 views
0

我有一个名为“sale_status”的自定义字段,值(“出售”,“出售”,“让”)显示在管理单选按钮中。现在,每个人都可以分配到一个属性。通过wordpress中的多个自定义字段值排序

目前查询通过发布日期提取属性顺序,但我希望它是由sale_status然后日期。

我的代码below--

$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}"; 

但在正确的顺序也没有显示。

任何帮助,高度赞赏。提前致谢。

回答

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 
    ) 
); 
+0

你也可以使用meta_value_num meta_value_num。只有当您想为每个有序字段设置不同的排序顺序时,才需要该数组(该功能[已添加到WP 4.0中](https://make.wordpress.org/core/2014/08/29/a-more -powerful阶由合的wordpress-4-0 /))。 – vard

+0

感谢您指出这一点! – Technoh

+0

@Technoh非常感谢您的帮助。它像一个魅力。只是想知道是否有可能首先显示全部“待售”,然后是全部“已售出”,然后全部“让” – Raj

相关问题