按一个自定义字段值排序并选择另一个WordPress帖子

问题描述:

我试图只显示标记为in-stock的帖子,并按inventory_number(这是一个数字值,因此我使用的是meta_value_num)排序。下面的代码是选择in-stock项目,但它没有按inventory_number排序。我究竟做错了什么?按一个自定义字段值排序并选择另一个WordPress帖子

$args = array(
    'numberposts' => -1, 
    'post_status'=>"publish", 
    'post_type'=>"post", 
    'category_name'=>"tape", 
    'meta_query' => array(
      'relation' => 'AND', 
      array(
       'key' => 'inventory_number', 
       'orderby' => 'meta_value_num', 
       'order' => 'asc' 
      ), 
      array(
       'key' => 'status', 
       'value' => 'in-stock', 
       'compare' => 'LIKE' 
      ) 
     ) 
); 

对于自定义字段的排序,meta_key=keyname必须存在于查询中。另外我认为你不需要在AND条款中的订单。所以试试这个...

$args = array(
    'numberposts' => -1, 
    'post_status' => 'publish', 
    'post_type' => 'post', 
    'category_name' => 'tape', 
    'meta_query' => array(
     array(
      'key' => 'status', 
      'value' => 'in-stock', 
      'compare' => 'LIKE' 
     ) 
    ), 
    'meta_key' => 'inventory_number', 
    'orderby' => 'meta_value_num', 
    'order' => 'ASC' 
); 
+0

谢谢,就是这样。 –

+0

酷,没有probs :) – davmos