Постраничная навигация при query_posts

При использовании в шаблоне query_posts перестает работать постраничная навигация – при переходе на следующую страницу отображается тот же самый контент. Проблема решается путем добавлению к циклу всего 2-х строк кода.

Необходимо найти код начала цикла:

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

и вставить перед ним следующий код:

<?php
$page = (get_query_var('paged')) ? get_query_var('paged') : 1;
query_posts("paged=$page");
?>

Ну и, естественно, если необходимо, в query_posts можно добавить дополнительные параметры, например, количество постов в этом цикле или рубрику, из которой из выбирать.

—–
В разделе “продажа инструментов в Москве” сайта “Из рук в руки” – http://irr.ru/building/instruments/ – представлено большое количество частных объявлений и объявлений магазинов и компаний, предлагающих всевозможные инструменты на все случаи жизни.

  1 Мне понравилось!

Koммeнтapии (6):

  1. Спасибо, за публикацию. На сайте не мог никак настроить адекватный вывод страниц. Сделал как написано, здорово, работает! )

  2. на главной странице(index) такой метод почему-то не работает..

  3. Что делать, если два лупа? в каждом пагинация работает, но не зависит друг от друга.

  4. У меня тоже проблема с index как и у Евгения

  5. на главной функцию изменения цикла следует испльзовать таким образом
    query_posts( array( ‘cat’ => 8, ‘paged’ => get_query_var(’paged’) ) );
    тоесть параметры передавать через массив, и среди параметров должен быть ‘paged’ => get_query_var(’paged’) )

Oтпpaвить кoммeнтapий

Облако тегов