Как исключить несколько категорий из query_posts?

Сайт на WordPress. Я пытаюсь вывести записи из текущей рубрики. Но стоит задача исключить категории с id 3 и 8. Как не пыталась не получается, подскажите пожалуйста.

<?php
$infocat = get_the_category();
$info = $infocat[0]->cat_ID;
$array = "cat=$info";
query_posts($array);    
if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<a class="permlinccat" href="<?php the_permalink() ?>" title="Перейти к посту: <?php the_title(); ?>" ><?php the_title(); ?></a>
<?php endwhile; else: ?>
Постов не найдено
<?php endif; wp_reset_query(); ?>

Ответы (1 шт):

Автор решения: WP Punk

Не используйте query_posts. Подробнее тут: https://www.kobzarev.com/wordpress/query-posts/.

Вместо этого используйте WP_Query:

$query = WP_Query( [
    'post_type' => 'post',
    'posts_per_page' => 10,
    'category__in' => [ get_queried_object_id() ], // Current category ID.
    'category__not_in' => [ 3, 8 ] // term_id for excludes.
] );

var_dump( $query->posts );
→ Ссылка