raselgit
@raselgit
Веб-дизайнер

Как исправить работу постраничной навигации?

У меня такой код в index.php:

<?php get_header(); ?>
<?php
    query_posts('posts_per_page=0');
    if ( have_posts() ) :
    while ( have_posts() ) : the_post();
        if ( $wp_query->current_post == 0 ) :
            get_template_part( 'hero' );
        endif;
    endwhile;
    endif;
?>
<div id="main">
	<div id="articles">
	<?php
        query_posts('posts_per_page=0');
        if ( have_posts() ) :
        while ( have_posts() ) : the_post();
            if ( $wp_query->current_post > 0 ) :
                get_template_part( 'article' );
            endif;
        endwhile;
        endif;
    ?>
    <?php the_posts_pagination( array(
			'end_size' => 2,
			'mid_size' => 2,
	) ); ?>
	</div>
	<?php get_sidebar(); ?>
</div>
<?php get_footer(); ?>


Постраничная навигация выводится, но при переходе на следующую страницу и вообще на любую выводит ошибку "Страница не найдена". Не могу понять в чем проблема?
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
HeadOnFire
@HeadOnFire
PHP, Laravel & WordPress Evangelist
Проблема вот тут: query_posts(
У меня уже язык болит повторять - никогда не используйте query_posts! Среди кучи проблем, которые вызывает данная функция, одна из первых и основных - поломка пагинации! Объясняю еще раз - в отличие от WP_Query или get_posts() данная функция модифицирует основной запрос, на основе которого и просчитывается пагинация.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@ommunist
Делаю и поддерживаю мультиязычные сайты
А как у вас определена функция the_posts_pagination() и где?
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы