2016-11-29 4 views
1

"post_up_lvl"(支配的)と "post_up_exp"の2つのメタキーで投稿を注文したい。2つのメタキーによるワードプレス注文のクエリ

例:出力は44321111でなければなりません。もしpost_up_lvl repeatがpost_up_expで注文しなければなりません。私はそれを試みましたが、それは "post_up_lvl"だけで整理します。

$qargs1 = array(

       'post_type'   => 'post', 
       'posts_per_page' => -1, 
       'paged'    => $paged, 
       'meta_query' => array(
       'relation' => 'AND', 
       'levels' => array(
        'key'  => 'post_up_lvl' 
       ), 
       'dates' => array(
        array(
         'key' => 'post_up_exp', 
         'value' => $today, 
         'compare' => '>=', 
         'type' => 'datetime' 
        ) 
       ) 
       ), 
       'orderby' => array(
       'levels' => 'DSC', 
       'dates' => 'DSC' 
       ), 

       ); 

答えて

2

パラメータdatesが存在しない、あなたの代わりにdate_queryを使用する必要があり、私はWP_Queryのレベルパラメータについて聞いたことがない、ここで

あなたは、配列が残ってなければならない、meta_queryとdate_queryのためのアイデアです上記のリンクの助けを借りて、ニーズとして引数を変更/追加/削除することができ、

'meta_query' => array(
     'relation' => 'AND' 
      array(
       'key' => 'post_up_lvl', 
       'value' => $today, 
       'type' => 'DATETIME' 
      ) 
      array(
       'key' => 'post_up_exp', 
       'value' => $today, 
       'type' => 'DATETIME' 
      ) 
    ), 
    'date_query' => array(
     array(
      'key' => 'post_up_exp', 
      'value' => $today, 
      'compare' => '>=', 
      'type' => 'datetime' 
     ) 
    ) 
+0

私はwp_queryの使い方を知っていますが、私は2つのキーで注文する方法を知りません:( – user3514052

+0

あなたはそれが日付とレベルではうまく動作しないことを知っています;-)カスタムフィールドhttps://developer.wordpress.org/reference/classes/wp_query/#custom-field-post-meta-parameters、日付クエリ、注文。あなたは、基本的なmeta_query配列とdate_queryを持っている例では、未知のパラメータや引数ではクエリは動作しません。クエリを修正し、var_dump($ today)(確かに)を試してください。日付の種類を確認してください。ではごきげんよう。 – Benoti

+0

申し訳ありませんが、私は間違いに気付かなかった。私は修正し、今はすべて動作します。 – user3514052

0
$qargs1 = array(

       'post_type'   => 'post', 
       'posts_per_page' => -1, 
       'paged'    => $paged, 
       'meta_query'  => array(
        'relation' => 'AND', 
        'level' => array(
         'key'  => 'post_up_lvl', 
         'type' => 'NUMERIC', 
         'compare' => 'EXISTS', 
        ), 
        'expire' => array(
         'key' => 'post_up_exp', // Check the start date field 
         'value' => $today, // Set today's date (note the similar format) 
         'compare' => '>=', // Return the ones greater than today's date 
         'type' => 'datetime,' // Let WordPress know we're working with numbers 
        ), 
       ), 
       'orderby' => array(
        'level' => 'DESC', 
        'expire' => 'DESC', 
         ) 
       ); 

は私のクエリを固定し、今ではめざしrks

関連する問題