Поддержка Проблемы и решения Сломалась пагинация в категориях

  • Всем здрасти. Заметил, что в категориях не работает пагинация, возвращается 404 ошибка. Перепробовал несколько кодов постраничной навигации, но не помогло. Нашел одно решение, это добавить в файл функций темы следующий код:

    function codernote_request($query_string ) {
      if ( isset( $query_string['page'] ) ) {
        if ( ''!=$query_string['page'] ) {
          if ( isset( $query_string['name'] ) ) {
            unset( $query_string['name'] ); }
          }
        }
        return $query_string;
    }
    add_filter('request', 'codernote_request');
    
    add_action('pre_get_posts', 'codernote_pre_get_posts');
    function codernote_pre_get_posts( $query ) {
      if ( $query->is_main_query() && !$query->is_feed() && !is_admin() ) {
        $query->set( 'paged', str_replace( '/', '', get_query_var( 'page' ) ) );
      }
    }

    В итоге на страницах категорий все работает, а вот постраничная навигация с главной сломалась. Урл меняется, а содержимое выводится то же самое, что и на главной. Одно лечу — другое калечу.

    Помогите пожалуйста заставить сайт правильно функционировать. Спасибо.

    • Тема изменена 1 неделя, 6 дн. назад пользователем  AlexOff.
Просмотр 15 ответов — с 1 по 15 (всего 33)
  • Неужели ни у кого нет мыслей как это починить ? Заметил после обновления до последней версии WP и перехода на php 5.4

    вы все свои художества из темы уберите, а потом зайдите в «настройки\постоянные ссылки» и нажмите «сохранить изменения».

    Flector, это не мои художества, нагуглил их

    http://codernote.ru/wordpress/404-oshibka-the_posts_pagination/

    Из кода давно убрал. Сейчас пагинация работает только на главной. В категориях возвращается 2…N страница возвращает 404 ошибку.

    Модератор SeVlad

    (@sevlad)

    wp.me/P3YHjQ-3

    Неужели ни у кого нет мыслей как это починить ?

    Боюсь, они Вам не понравятся и Вы обидитесь.
    Но раз просите… Нужно использовать темы из каталога и делать к ним дочерние.

    SeVlad, моему проекту пошел 7-ой год, все работало как часы. С темой в последние 2 года ничего не делал. Поэтому грешить на тему я бы не стал. Еще раз повторюсь, грусть-печаль пошла после обновления сайта. Только что протестировал на смену версии PHP, откатил до 5.3, все равно возвращается 404 ошибка. Помогите пожалуйста

    Модератор Atrax

    (@atrax)

    нагуглил их

    Какой костыль…

    https://codex.wordpress.org/ЧАВО/Структура_постоянных_ссылок

    • Ответ изменён 1 неделя, 2 дн. назад пользователем  Atrax.

    Atrax, немного не понял этой документации. У меня сейчас идет именно /%category%/%postname%/, а в документации пишется:

    URL не должен начинаться с /%category%/, /%tag%/, /%author%/ и /%postname%/.

    Но у меня уже устаканилась структура и все мои посты в индексе и дают неплохой трафик. Как быть ? Не менять же структуру сайта ?

    Модератор Atrax

    (@atrax)

    Как быть ?

    Решать вам. Про то, что с такой структурой возможны проблемы, было известно уже лет десять. Вы сами заложили эту бомбу и она таки рванула. Принимали риски — принимайте и последствия.

    • Ответ изменён 1 неделя, 2 дн. назад пользователем  Atrax.
    • Ответ изменён 1 неделя, 2 дн. назад пользователем  Atrax.

    Это мой первый и единственный сайт. Поэтому про бомбу я не знал. Тем более, что связку /%category%/%postname%/ по дефолту предложил сам ВП. Есть ли какие-нибудь хитрости, чтобы решить эту проблему. Я не разбираюсь во всех этих кодах к сожалению (((

    50% всех сайтов используют /%category%/
    и проблем при этом не возникает.

    еще раз, ТС — нажмите «сохранить изменения» в постоянных ссылках. без изменения самой структуры ссылок.

    Пробовал. Не помогло (((

    ok, тогда покажите, где вашу тему можно скачать.

    при стандартных циклах вывода записей проблем с навигацией не возникает. никогда.

    и да — вы там с обновлением php, wordpress и прочего — плагины не обновляли?
    если да — то отключите все плагины, нажмите опять «сохранить изменения» в постоянных ссылках и смотрите — не заработает ли.

    Модератор Atrax

    (@atrax)

    связку /%category%/%postname%/ по дефолту предложил сам ВП

    Это неправда.
    Если, конечно, речь не идет о каком-нибудь «альтернативном» WP.

    Есть ли какие-нибудь хитрости, чтобы решить эту проблему.

    Можно попробовать сменить ссылки на что-то более каноничное, а в .htaccess создать полный список редиректов с правильным кодом (301, кажется — я не SEO-специалист). Через какое-то время необходимость в редиректах пропадет (наверное), а новые ссылки будут уже индексироваться сразу правильно.

    Как-то так..

    Flector, отрубил все плагины, даже Contact Form 7 и WP-Optimize, все равно на внутренних страницах категорий прилетает 404 ошибка.

    Тема пилена-перепилена, для кастомизации под нужды проекта. Могу на гаглдрайв залить. Заливать ?

    Atrax, переиндексации занимает уже давно более 2х недель, а робота зеркальщика Яндекс выпускает крайне редко. У знакомого сайт поменял структуру 3 года назад (интернет магазин). Так Гугл до сих пор но некоторым запросам выдает урлы, с которых стоит 301 редирект на новые адреса.

Просмотр 15 ответов — с 1 по 15 (всего 33)