У меня есть два запроса на одной странице. Первый запрос текущего сообщения, и если он является подкатегорией основной категории, он отображает эти записи в подкатегории. Второй запрос текущей категории slug. Ошибка в том, что второй запрос показывает категорию из первого запроса. Неужели wp_reset_query не работает? Странно, что это происходит только на реальном сервере. Мой местный он отлично работает.Wordpress несколько запросов на одной странице ошибки
//First query
foreach((get_the_category()) as $childcat) {
if (cat_is_ancestor_of(26, $childcat)) {
$subcat = $childcat->cat_name;
}}
$sub_query = new WP_Query(array(
'post_type' => 'work',
'category_name' => $subcat,
'posts_per_page' => 12,
'orderby'=> 'date',
'order'=> 'DESC',
'paged'=> $paged,
'post__not_in' => array(get_the_ID())
));
if ($sub_query->have_posts()): ?>
<?php while ($sub_query->have_posts()) : $sub_query->the_post(); ?>
// content
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>
//second query
if (is_single()) {
$cats = get_the_category();
$cat = $cats[0];
} else {
$cat = get_category(get_query_var('cat'));
}
$cat_slug = $cat->slug;
$work_query = new WP_Query(array(
'post_type' => 'work',
'category_name' => $cat_slug,
'posts_per_page' => 12,
'orderby'=> 'date',
'order'=> 'DESC',
'paged'=> $paged,
'post__not_in' => array(get_the_ID())
));
if ($work_query->have_posts()): ?>
<?php while ($work_query->have_posts()) : $work_query->the_post(); ?>
// content
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>