1

現在、WordPressサイトにチェックボックスベースの検索とフィルターがあります。

基本的には、このwp_queryを使用して機能します

$ queryObject = new WP_Query(array( "post_type" =>'toy'、'posts_per_page' => 999999、
    'category__and' => $ _POST ['myListOfCategories']));

カテゴリの使用をやめたい(ブログの使用が面倒になるため)

そのため、カスタム分類法を使用してすべてを設定しましたが、「taxonomy__and」がないことに気付きました。

WP_Queryを使用して、category__andと同じ方法で分類法を使用して投稿を検索する方法を知っている人はいますか?

たとえば、複数の分類IDを渡すと、それらすべてがリンクされている投稿のみが返されます。

4

3 に答える 3

1

他のポスターの助けを借りて、ここに私の質問に対する最終的な答えがあります:

$ queryObject = new WP_Query(array( "post_type" =>'toy'、'posts_per_page' => 10、'tax_query' => array(
        配列(
            '分類法'=>'toy_cats'、
            'フィールド'=>'id'、
            'terms' => array(14,20,39,42)、
            '演算子'=>'AND')
    )));

上記のコードは、「toy」投稿タイプを持ち、分類法「toy_cats」にあり、次のすべての用語IDの14 AND 20 AND 39AND42に割り当てられている投稿のみを表示します。

これが他の誰かに役立つことを願っています。

于 2012-09-04T12:20:08.330 に答える
1

http://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parametersから

このようなものを使用できるはずです。

$args = array(
    'tax_query' => array(
        'relation' => 'AND',
        array(
            'taxonomy' => 'movie_genre',
            'field' => 'slug',
            'terms' => array( 'action', 'comedy' )
        ),
        array(
            'taxonomy' => 'actor',
            'field' => 'id',
            'terms' => array( 103, 115, 206 ),
            'operator' => 'NOT IN'
        )
    )
);
$query = new WP_Query( $args );
于 2012-09-03T16:02:57.207 に答える
1

WordpressのQuery_postsで複数の分類法を渡しました

以下のURLを参照してくださいそれはあなたにとって非常に助けになります:-

https://wordpress.stackexchange.com/questions/25999/how-to-pass-url-parameters-for-advanced-taxonomy-queries-with-multiple-terms-for

https://wordpress.stackexchange.com/questions/10713/wp-3-1-getting-tax-query-to-work-in-query-posts

Wordpress 2.8で複数のカスタム分類用語をクエリしますか?

またはそれを試してみてください

query_posts( array(
  'tax_query' => array(
    array(
      'taxonomy' => 'tax1',
      'field' => 'slug',
      'terms' => array('term1', 'term2'),
      'operator' => 'OR'
    ),
    array(
      'taxonomy' => 'tax2',
      'field' => 'slug',
      'terms' => array('term3', 'term4'),
      'operator' => 'AND'
    ),
) );
于 2012-09-03T16:08:53.483 に答える