Как объединить два WP_Query запроса в один?

Мне нужно объединить результаты 2 выборок WP_Query в один и вывести с помошью стандартного цикла вордпресс. У меня не получилось выбрать нужные записи с помошью одного запроса, поэтому мне нужно объединить результаты первого со вторым. Скажите возможно ли это сделать?

Добавить Комментарий
Ответ

На пой взгляд правильнее было бы написать 1 запрос, так код будет правильнее и работать все будет быстрее. Но если нет возможности то приведу пример объединения 2х запросов в один.
Пример:

// Параметры первого запроса
 $my_groups_one = array(
 'post_type' => 'group',
 'author' => bp_displayed_user_id(),
 'posts_per_page' => 999999
 );
// Параметры второго запроса
 $my_groups_two = array(
 'post_type' => 'group',
 'post__in' => $user_groups,
 'posts_per_page' => 999999
 );
// Получим результат с первыми параметрами
$my_groups_first = new WP_Query($my_groups_one);
// Получим результат с вторыми параметрами
 $my_groups_last = new WP_Query($my_groups_two);
// создадим 3й запрос, в котором и будем объединять 2 предыдущих
 $result = new WP_Query();
// Объединяем
 $result->posts = array_merge($my_groups_first->posts, $my_groups_last->posts);
$result->post_count = count($result->posts);
// Выводим
if ($result->have_posts()) {
 while ($result->have_posts()) {
 $result->the_post();
 the_title();
 }
 }
 

Добавить Комментарий

Ваш ответ

Размещая свой ответ, вы соглашаетесь с правилами сайта.