WordPress как на ладони

Не работает пагинация по рубрикам

Вывожу анонсы статей, вызываю пагинацию. Появляется необходимое кол-во страниц. Но при клике на следующую или любую другую остается та же страница.

Вот код через который вывожу:

<?php while (have_posts()) : the_post();?>

<div class="news-view">
	<a href="<?php the_permalink(); ?>"><h3><?php the_title(); ?></h3></a>
	<div class="d-flex">
		<div class="main-wrap">
			<a href="<?php the_permalink(); ?>">
				<?php echo get_the_post_thumbnail( $id, array(200,200) ); ?>
			</a>
		</div>
		<div class="news-txt">
			<p><?php the_excerpt_max_charlength(250); ?></p>
			<a href="<?php the_permalink(); ?>">подробнее</a>
		</div>
	</div>
</div>
<?php endwhile; ?>

<?php the_posts_pagination(); ?>

<?php  wp_reset_query();?>
Заметки к вопросу:
j-nokia 5.1 год назад

Было 3 ошибки. Итак поэтапноe решение, что я сделал:

  1. Создал для каждой рубрики страницу через админку и присвоил шаблон - этого делать нельзя пагинация ломается. Для рубрик вообще не надо создавать отдельные страницы через админку.
  2. Нарушил иерархию шаблонов wordpress. Если вы создаете несколько рубрик и для каждой рубрики используете отдельный шаблон страницы то именуйте файлы category-(id-рубрики).php например category-10.php WP ищет в первую очередь эти страницы.
  3. Не правильное определение переменной (только в моем случае), у остальных вроде как работает укороченный вариант записи переменной $paged
$paged = 1;

if(get_query_var('paged')) {
	$paged = get_query_var('paged');
} elseif(get_query_var('page')) {
	$paged = get_query_var('page');
}

$query = new WP_Query(array(
	'paged' => $paged,
	'cat' => 10,
));

После всех манипуляций абсолютно любой тип пагинации стал корректно работать

0
j-nokia
5.1 год назад
  • 0
    kolshix779 paxtoy.com

    воткнул первый код из этого ответа (ниже по ссылке) и все завелось, но может у вас ВП и тема чегото не пускают, тут не подскажу никак

    вопрос

    код под себя уже подгоните.

    j-nokia 5.1 год назад

    На стандартной теме, для стандартного шаблона да заведется и у меня тоже). Но здесь идет несколько рубрик, каждая запись выводится на отдельной странице по рубрике. Посты выводятся через cat => ID. И пагинация на этих условиях отказывается работать

    kolshix 5.1 год назад

    я проверял на странице data.php и на отдельных шаблонах и вставлял 'cat' => 'ID'
    все завелось (на удивление, обычно не работает)

    проверьте пагинацию , может в теме стоит своя

    j-nokia 5.1 год назад

    Своей нет, пробовал через плагин wp_pagenavi тоже не рагирует.
    Нашел инфу. Моя последовательность действий была такая. Создал шаблон страницы, создал рубрику, создал страницу. На кодексе говорили, что для рубрик не надо создавать свои страницы - они по умолчанию создаются архивные. так вопрос как тогда перейти на эти архивные страницы не через админку?

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация