2017-09-04 6 views
0

この$ argsをクエリにどのように再コードして、トリガされたフィルタ条件のいずれかが機能するようにするにはどうすればよいですか?ここに私のコードです。個別に私はすべてのフィルタをテストし、正常に動作している...しかし、一緒にそれを組み合わせ、私は立ち往生だ。 1つのフィルタはタクソノミーであり、他の2つは選択リストである。私はACFを使用しています。ACFを使用してWordpressでタクソノミーまたは2つの選択リストをクエリ

$args = array(

      'post_type' => 'pathway', 
      'post_status' => 'publish', 
      'posts_per_page' => -1, 
      'orderby' => 'date', 
      'order' => 'DESC', 

      'tax_query' => array(
       array(
        'taxonomy' => 'uni_tax', 
        'field' => 'slug', 
        'terms' => $the_university_filter, 
       ), 
      ), 

      'meta_query' => array(
       array(
        'meta_key' => 'entry_level', 
        'meta_value' => $the_entrylevel_filter, 

       ) 
      ) 

      'meta_query' => array(
       array(
        'meta_key' => 'state', 
        'meta_value' => $the_state_filter, 

       ) 
      ) 

     ); 

答えて

0

あなたが合うように、この

$args = array(
    'post_type' => 'pathway', 
    'post_status' => 'publish', 
    'posts_per_page' => -1, 
    'orderby' => 'date', 
    'order' => 'DESC', 

    'tax_query' => array(
     array(
      'taxonomy' => 'uni_tax', 
      'field' => 'slug', 
      'terms' => $the_university_filter, 
     ), 
    ), 

); 

if (isset($_POST['entry_level_filter']) { 
    $args['meta_query'][] = array(
     'key' => 'entrylevel', 
     'value' => $the_entrylevel_filter, 
    ); 
} 

if (isset($_POST['state_filter']) { 
    $args['meta_query'][] = array(
     'key' => 'state', 
     'value' => $the_state_filter, 
    ); 
} 

は、クエリの引数を変更してください試してみてください。 meta_queryの組み合わせに関する問題がある場合は、Googleまでご連絡ください。

$_POST['entry_level_filter']は、この変数がデータを送信するために使用されることを前提としています。意思決定変数を適切に処理します。

+0

お手伝いをしてくれてありがとうございましたが、それはできませんでした...私はいくつかの進歩を遂げました... –

+0

さらなる助けが必要な場合は、進捗状況を質問に追加してください。あなたはそれを持っていて、それでyhesolutionを掲示して答えをマークするので、他の人が役に立つと思うかもしれません。 – Junaid

関連する問題