私はwp_queryに渡す分類法と用語の配列をコンパイルしようとしています、私の配列は次のようになります...
Array
(
[0] => Array
(
[taxonomy] => color
[field] => term_id
[terms] => Array
(
[0] => 15
)
)
[1] => Array
(
[taxonomy] => shape
[field] => term_id
[terms] => Array
(
[0] => 87
)
)
[2] => Array
(
[taxonomy] => weight
[field] => term_id
[terms] => Array
(
[0] => 3
[1] => 54
)
)
[3] => Array
(
[taxonomy] => rating
[field] => term_id
[terms] => Array
(
[0] => 87
[1] => 88
)
)
)
このようにwp_queryに渡そうとしています...
$args = array(
'post_type' => 'post',
'relation' => 'OR',
'tax_query' => $myarray,
);
$query = new WP_Query( $args );
これは私に結果を与えていません、どこで間違っていますか?
問題はあいまいさです。メインパラメータリストに'relation' => 'OR'
を入れるだけでは、WP_Query
ではなくtax_query
であるかどうかをmeta_query
で知るにはどうすればよいですか。
どのように機能するか、およびrelation
パラメータがどこにあるかについては、 この例を示すWP_Query
の公式ドキュメントを参照する必要があります。
$args = array(
'post_type' => 'post',
'tax_query' => array(
'relation' => 'OR',
array(
'taxonomy' => 'category',
'field' => 'slug',
'terms' => array( 'quotes' ),
),
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => array( 'post-format-quote' ),
),
),
);
$query = new WP_Query( $args );
設定は次のように簡単です。
$myarray['relation'] = 'OR'; // untested