2014-09-23 3 views
0

Кто-нибудь знает, возможно ли иметь несколько массивов в query_posts, если да, то как?Wordpress query_posts несколько массивов?

Я ищу для запроса сообщения, которые находятся в категории 1 & 2. Но также сообщения, которые находятся в 1 & 3 и 1 & 4.

Так посты должны быть в категории 1, а также один из другие категории.

Таким образом, category__and будет там, где я начал, что позволяет мне запрашивать сообщения как в 1 & 2, но как бы я тогда продвинулся, чтобы добавить остальных 3,4 и т. Д.? добавив их 1,2,3,4,5, будут отображаться только сообщения во всех 5 категориях?

Вот то, что я до сих пор:

<?php         
    query_posts( 
     array('category__and' => array(1,2), 
     'posts_per_page' => 5, 
     'orderby' => 'date', 
      )); 
    while (have_posts()) : the_post(); 
?> 

Можно ли поместить массив массивов, чтобы выполнить то, что я просил?

ответ

1

Это должно быть возможно с помощью параметра tax_query.

query_posts(
    array(
     posts_per_page => 5, 
     tax_query => array(
      relation => 'OR', 
      array(
       'taxonomy' => 'category', 
       'operator' => 'IN', 
       'field' => 'id', 
       'terms' => array(1, 2), 
      ), 
      array(
       'taxonomy' => 'category', 
       'operator' => 'IN', 
       'field' => 'id', 
       'terms' => array(1, 3), 
      ), 
      array(
       'taxonomy' => 'category', 
       'operator' => 'IN', 
       'field' => 'id', 
       'terms' => array(1, 4), 
      ), 
     ), 
    ) 
); 

Смотрите документацию для каких-либо дополнительных деталей: http://codex.wordpress.org/Class_Reference/WP_Query#Taxonomy_Parameters

+0

Привет, это замечательно, что будет показывать сообщения, которые в обоих 1 и 2 не только должности, которые находятся в 1. – KojoSlayer

Смежные вопросы