• Добрый день. Использую файл search.php для показа результатов.

    Как мне задать пагинацию. Ставил плагины. Они показывают правильно, т.е. выводят цепочку страниц столько сколько надо, но при параметрах типа page/3/?s=УАЙТ+ЛИЛИАН все равно отдают первую страницу. Хотя страниц 11. Как мне указать какую страницу отдавать поиску?

    • Тема изменена 1 год, 3 месяца назад пользователем cheloveki.
Просмотр 6 ответов — с 1 по 6 (всего 6)
  • а должен отдавать третью страницу. посмотрите вдумчиво и подробно основной запрос global $wp_query перед выводом результатов поиска, в том числе $wp_query->request — может его чтото ломает.

    поле paged https://disk.yandex.ru/i/OWZCHxFktDLt-w

    в запросе лимит установлен 5

    https://disk.yandex.ru/i/ibDQ8HEcKJ2t7w

    выводить всегда первые 5

    https://disk.yandex.ru/i/ibDQ8HEcKJ2t7w это у вас на третьей странице поиска? У вас точно есть найденных постов достаточно?

    Если я правильно понял, лимит ограничивает настройка в админке. Сколько показывать записей на одной странице.

    а уже параметр paged говорит какую пятерку показывать.

    вы всетаки выберите, отвечаете на вопросы или делаете выводы самостоятельно.

    anyway… правильные пажинаторы работают на основании global $wp_query. который учитывает в том числе на какой странице пажинатора мы находимся. это видно по sql-запросу, по смещению в запросе постов.

    проблема в том, что $wp_query может быть а) скорректирован каким-то решением в плагине или теме до выполнения — хуком pre_get_posts… б) «испорчен» кривым кодом в промежутке между выводом постов и выполнением скрипта пажинатора. вот и ищите, на какую букву у вас сайт идет.

    • Ответ изменён 1 год, 3 месяца назад пользователем efess.

    Вопрос решил. Проблема была в коде functions.php,функция переопределяла параметр page. Добавлена была для теста и забыта)))

Просмотр 6 ответов — с 1 по 6 (всего 6)
  • Тема «Пагинация на странице поиска» закрыта для новых ответов.