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

  • Всем здрасти. Заметил, что в категориях не работает пагинация, возвращается 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' ) ) );
      }
    }

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

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

    • Тема изменена 6 лет, 6 месяцев назад пользователем AlexOff.
Просмотр 15 ответов — с 16 по 30 (всего 33)
  • Тема пилена-перепилена, для кастомизации под нужды проекта. Могу на гаглдрайв залить. Заливать ?

    давайте.

    Лежит тут https://goo.gl/Tww41H

    зуб даю, что это из-за плагина, который у вас category из ссылок на рубрики вырезает. ибо на тестовом сайте у меня никаких проблем пагинацией не возникает, хотя в теме и используется доисторическая функция от камы.

    а следовательно — вы так и не удосужились отрубить все плагины, как я вас просил выше.

    Уверяю вас, я все плагины отключил, проверил на разных браузерах, результат одинаков — 404 ошибка. Из установленных плагинов:

    Avatars 12.1
    Contact Form 7 4.9
    Contextual Related Posts 2.4.1
    Kama SpamBlock 1.7.5.1
    Ozh’ Better Feed 2.2
    phpbb_recent_topics 0.7.1
    Subscribe To Comments 2.3
    WP SexyLightbox 0.5.3
    WP-Optimize 2.1.1
    Yoast SEO 5.3.2

    Скорее всего проблема в Yoast SEO, но в настройках ничего не менял очень давно

    могу предположить, что проблема из-за WP-Optimize 2.1.1

    Уверяю вас, я все плагины отключил, проверил на разных браузерах, результат одинаков — 404 ошибка. Из установленных плагинов:

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

    у вас стандартные циклы вывода записей, никаких кастомных query_posts или wp_query. у вас просто не может не работать навигация. ну разве что код навигации от камы устарел — но вы там у него в комментах написали, что пробовали стандартную функцию wordpress по навигации. тогда вообще непонятно, что и кто у вас может глючить.

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

    Именно так.

    но вы там у него в комментах написали, что пробовали стандартную функцию wordpress по навигации

    Вот и я ума не приложу, что мог сделать такого, чтобы что-то не работало. Грусть-печаль (((

    Расскажите пожалуйста, на основе того кода, который я нагуглил (в первом посте) можно подправить ситуацию ? И чем эти костыли чреваты для сайта в целом? Напомню, с ним в категориях все заработало, а вот уйти куда-то с главной по страницам увы уже не получается (((

    Нашел выход из ситуации, но это не панацея.

    Сейчас у меня страницы категорий имеют вид:
    site.ru/cat-name/
    При переходе на 2 … N страницу возвращает 404 ошибку
    site.ru/cat-name/page/2/

    Но если добавить категории, то начинает все работать:
    site.ru/category/cat-name/
    site.ru/category/cat-name/page/2/

    Подскажите пожалуйста, как избавиться от category в урле и заставить работать пагинацию ?

    поставить адекватный плагин удаления category.
    и я уже вам говорил, что баг из-за удаления category — но вы уверили, что все плагины вами отключались.

    Дело не в плагине как оказалось, а в файле .htaccess

    Снял 301 редиректы, протестил — заработало. Нагружать систему еще одним плагином на мой взгляд не очень правильно, ради одной правки урла. А вот хук подходящий пока не нагуглил. Не можете посоветовать решение ?

    P.S. Недавно меня взломали, в срочном порядке залил не тестированный хатцесс и обновил систему. Поэтому и грешил на версию пхп или обновление. Сам дурак, понимаю ((( Каюсь.

    ставьте плагин https://wordpress.org/plugins/no-category-base-wpml/ и не ломайте себе мозг.

    Эххх. Если не найду хука придется ставить …

    вы тоже из секты «плагиноненавистников»?
    плагин это тот же «хук» в functions.php — только без лишнего гиммора.

    ага ))) поклоняюсь functions.php каждый вечер и прошу его снизойти на меня, чтобы наделил меня мудростью кодинга. Но пока мудростью со мной делится только гугл (((

    Про отличие плагинов и хуков знаю, читал обзоры и сравнения производитльности. Но так сложилось исторически, что выносить правки в functions.php привычнее

Просмотр 15 ответов — с 16 по 30 (всего 33)
  • Тема «Сломалась пагинация в категориях» закрыта для новых ответов.