2017-05-03 7 views
1

「プロパティ」というカスタムの投稿タイプがあります。複数のACFフィールドの照会と受注

各プロパティには次のオプションを使用してチェックボックスフィールドが "property_status" と呼ばれるACFがあります

家賃:家賃は

は、賃貸の場合:販売販売

について:

販売レンタル販売住宅

新規:建設中

各プロパティには、以下のオプションで「property_featured」と呼ばれる機能のリストACFラジオボタンフィールドを持っていない:

なし:いいえ

:はい

私が使用して表示する記事を成功裏に照会しています次のコード:彼らの「プロペで、その後、「プロパティ」の下の他の記事を表示:私は「はいはい」のラジオボタンを選択して特色のプロパティを呼び出すことで、私の記事を注文する必要が

$paged = (get_query_var('paged')) ? absint(get_query_var('paged')) : 1; 
$args = array(
    'post_type' => 'property', 
    'posts_per_page' => 12, 
    'meta_key' => 'property_status', 
    'orderby' => array(
     'property_featured' => 'ASC', 
     'property_status' => 'ASC' 
    ), 
    'order' => 'ASC', 
    'paged' => $paged 
    ); 
$wp_query = new WP_Query($args); 

rty_status 'の家賃、賃貸料と新しい、販売、その後の販売と新しい。プロパティの中には、賃貸用のプロパティなどの「property_status」フィールドで2つのチェックボックスを選択できるものもありますが、それはすべて建設中の「新規」です。

これらのカスタム投稿を必要な順番で表示しようとするといくつかの異なるクエリ宣言を試しましたが、成功しませんでした。上のコードは私が使っているものです。あなたがpostmetaの二つの異なる部分で注文したい場合は、WP_Query documentationで説明したように

答えて

0

は、あなたが組み合わせて使用​​してORDERBYアレイにあなたのメタクエリをリンクする必要があります(例えば、はproperty_status第1、第2とをproperty_featured) 'という名前のメタクエリ'。以下は

あなたのコードが変更されます。

$args = array(
    'post_type'  => 'property', 
    'posts_per_page' => 12, 
    'paged'   => $paged, 

    'meta_query'  => array(
     'relation' => 'AND', 
     'featured_clause' => array(
      'key' => 'property_featured', 
      'compare' => 'EXISTS' 
     ), 
     'status_clause' => array(
      'key' => 'property_status', 
      'compare' => 'EXISTS' 
     ) 
    ), 

    'orderby' => array(
     'featured_clause' => 'ASC', 
     'status_clause' => 'ASC' 
    ) 

); 
関連する問題