запрос wp с множественной таксономией?

Привет, я хочу получить все сообщения, относящиеся к нескольким таксономии. Я видел в кодексе, но он имеет только статические (2) таксономии, но в моем случае у меня есть переменное число таксономий.

На веб-сайте Codex это код …

$args = array( 'post_type' => 'post', '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 ); 

но таксономии могут быть более 2 или могут быть равны 1. Итак, как петля для переменного количества таксономий.

Я хочу как это http://software.pricegrabber.com/office-suites/p/169/

Пожалуйста помоги!!

Solutions Collecting From Web of "запрос wp с множественной таксономией?"

У вас может быть больше двух. Вы можете иметь столько, сколько хотите, но у вас могут быть штрафы за производительность, если вы пытаетесь использовать слишком много. Я ожидаю, что это будет верно, особенно если вы используете отношения OR .

Для создания tax_query массива tax_query .

https://wordpress.stackexchange.com/a/97444/21376

Чтобы адаптировать это к вашим обстоятельствам, просто связывайте каждый термин с его таксономией.

 $def = array( 'field' => 'slug', 'operator' => 'NOT IN' ); $cities = array( 'boston' => 'tax_city', 'chicago' => 'tax_city', 'texas' => 'tax_state', 'california' => 'tax_state' ); $args = array('relation' => 'OR'); foreach ($cities as $term => $tax) { $args[] = wp_parse_args( array( 'taxonomy'=>$tax, 'terms'=>$term ), $def ); } print_r($args); 

Вы можете сделать то же самое с вложенными циклами.

 $cities = array( 'tax_city' => array( 'boston', 'chicago' ), 'tax_state' => array( 'texas', 'california' ) ); foreach ($cities as $tax => $terms) { foreach ($terms as $term) { $args[] = wp_parse_args( array( 'taxonomy'=>$tax, 'terms'=>$term ), $def ); } } print_r($args);