Игнорирование категории в WP_Query по-прежнему показывает ссылки в next_post_link ()?

Поэтому у меня есть WP_Query:

$homepage = new WP_Query( 'posts_per_page=1&cat=-5' ); 

и в моем цикле while у меня есть вызов next_post_link() и previous_post_link() , которые показывают сообщения из категории исключенных. Вот как выглядит мой код:

 <?php while ( $homepage->have_posts() ) : $homepage->the_post(); ?> <?php next_post_link('&laquo; %link'); ?> <?php previous_post_link('%link &raquo;'); ?> <?php endwhile; ?> 

Согласно документам wordpress on next_posts_link & previous_posts_link , эти функции основаны на текущем запросе:

Распечатывает ссылку на следующий набор сообщений в текущем запросе.

Так кто-нибудь имеет представление о том, почему next_post_link() и previous_post_link() будут показывать сообщения, которые должны быть исключены, пока остальная часть цикла работает так, как ожидалось?

Вы также должны будете исключать категорию в своих next_post_link вызовах next_post_link и previous_post_link , поскольку она использует данные сообщений, а не данные ваших конкретных запросов, поэтому это должно исправить:

 while ( $homepage->have_posts() ) : $homepage->the_post(); next_post_link( '&laquo; %link', '%title', false, '5' ); previous_post_link( '%link &raquo;', '%title', false, '5' ); endwhile; 

Где 5 – исключенная категория. Если вам нужно исключить больше категорий, просто разделите их запятой.