2016-11-01 2 views
1

私はタグに依存して投稿を表示しようとしています。ワードプレスWP_Query配列変数を持つ用語

'timbermode','bathroom' 
:私はこのような何かを見ているの書式​​を下回っ機能で

array(
    [0] => 'some tag name', 
    [1] => 'another tag name' 
) 

私は長期ボタンをクリックしたとき、彼らはこのことを言っていますフォーマットされたデータの配列をオフに送信することをいくつかの機能を持っています

その後、そのデータを「terms」セクションに渡しますが、すべてが返されることはありません。

function ajax_filter_get_posts($taxonomy) { 

    $taxonomy = $_POST['taxonomy']; 

    $data = json_decode(stripslashes($taxonomy)); 

    $stringData = '"' . implode('","', $data) . '"'); 

    //$stringData = "array('" . implode("','", $data) . "')"; 

    // WP Query 
    $args = array(
    'post_type' => 'gallery', 
    'posts_per_page' => 8, 
    'tax_query' => array(
      array(
       'taxonomy' => 'gallery_tag', 
       'field' => 'slug', 
       'operator' => 'IN', 
       'terms' => array($stringData), 
      ), 
     ) 
    ); 

    $query = new WP_Query($args); 

    echo "{$query->request}"; 
} 

私は手動ので、などの用語を渡す場合:

// WP Query 
    $args = array(
    'post_type' => 'gallery', 
    'posts_per_page' => 8, 
    'tax_query' => array(
      array(
       'taxonomy' => 'gallery_tag', 
       'field' => 'slug', 
       'operator' => 'IN', 
       'terms' => array('some term', 'another term'), 
      ), 
     ) 
    ); 

それはその後、正常に動作します。私はそれを理解できません。

何か助けていただければ幸いです。

おかげで、

Codarz
+1

'$ data'はすでに配列であり、必要に応じてフォーマットされています。 'terms '=> array_values($ data)'を設定するだけです。 – Allkin

+0

絶対凡例。 4時間半後にはwoohoo!それを私がそれを受け入れる答えとして追加してください。 – Codarz360

答えて

1

$data必要に応じて既に配列およびフォーマットさです。ちょうど'terms' => array_values($data)と設定してください。

関連する問題