Как отключить бесконечный скролл в JournalX на странице авторов и включить пагинацию

Если в JournalX бесконечный скролл удобен для главной ленты, то на архиве автора он часто мешает: сложнее дать ссылку на конкретную страницу, труднее контролировать индексацию, а пользователи не всегда понимают, где заканчивается список записей. В такой ситуации обычно проще оставить infinite scroll для ленты, но на странице автора вернуть обычную пагинацию.

Когда проблема действительно в бесконечном скролле

Симптомы обычно одинаковые: архив автора подгружается без явной границы страниц, URL не меняется предсказуемо, а в аналитике сложно понять, сколько контента реально просмотрели. Иногда это проявляется и в SEO: поисковому роботу проще работать с последовательными страницами архива, чем с бесконечной подгрузкой, если она не настроена аккуратно.

Прежде чем что-то менять, проверьте три вещи:

  • на странице автора действительно включен infinite scroll именно темой, а не отдельным плагином;
  • в шаблоне архива есть стандартная пагинация WordPress, а не полностью кастомная подгрузка;
  • в настройках JournalX нет отдельного переключателя для архивов авторов, который уже решает задачу без кода.

Диагностика: что именно подгружается на архиве автора

Откройте страницу автора и посмотрите исходный HTML и сетевые запросы в DevTools. Если при прокрутке появляются запросы к административному AJAX-обработчику или к REST API, значит подгрузка идет через механизм темы или плагина. Если же внизу уже есть обычные ссылки на страницы, но они скрыты стилями, задача сводится к отключению скрипта и возврату видимой пагинации.

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

Пошаговое решение: отключаем infinite scroll только для архивов авторов

Самый безопасный путь — делать это в дочерней теме или в небольшом mu-plugin. Тогда обновление JournalX не затрёт изменения. Ниже пример, который отключает бесконечный скролл на архиве автора через фильтр, если тема его предоставляет, и дополнительно подстраховывает вывод пагинации.

<?php
/**
 * Отключаем бесконечный скролл на архиве автора.
 * Добавьте в functions.php дочерней темы или в mu-plugin.
 */
add_action( 'after_setup_theme', function () {
    if ( is_author() ) {
        // Если JournalX использует фильтр для включения infinite scroll,
        // можно вернуть false только на архиве автора.
        add_filter( 'journalx_infinite_scroll_enabled', function( $enabled ) {
            if ( is_author() ) {
                return false;
            }
            return $enabled;
        } );
    }
} );

/**
 * Подстраховка: выводим стандартную пагинацию WordPress, если тема её не показывает.
 */
add_action( 'loop_end', function ( $query ) {
    if ( is_admin() || ! $query->is_main_query() || ! is_author() ) {
        return;
    }

    global $wp_query;
    if ( $query !== $wp_query ) {
        return;
    }

    echo '<nav class="archive-pagination" aria-label="Пагинация архива">';
    echo paginate_links( array(
        'total'   => $query->max_num_pages,
        'current' => max( 1, get_query_var( 'paged' ) ),
    ) );
    echo '</nav>';
}, 20 );

Этот пример намеренно не привязан к несуществующим API. Ключевой момент здесь в том, что фильтр journalx_infinite_scroll_enabled стоит использовать только если он реально есть в вашей версии темы. Если в JournalX такого фильтра нет, отключение делается другим способом: через настройки темы, через удаление скрипта или через переопределение шаблона архива автора.

Если у темы нет готового фильтра

Тогда ищите, какой скрипт отвечает за подгрузку. Обычно это видно в исходниках темы или в подключаемых файлах JavaScript. После этого можно отключить его только на архиве автора. Пример ниже показывает общий подход: снимаем регистрацию скрипта на нужной странице и оставляем стандартную пагинацию.

<?php
add_action( 'wp_enqueue_scripts', function () {
    if ( is_author() ) {
        wp_dequeue_script( 'journalx-infinite-scroll' );
        wp_deregister_script( 'journalx-infinite-scroll' );
    }
}, 100 );

Здесь важно заменить journalx-infinite-scroll на реальный handle скрипта из вашей установки. Его можно посмотреть в коде темы или через поиск по wp_enqueue_script.

Сравнение подходов: плагин, код или правка шаблона

ПодходКогда подходитПлюсыМинусы
Настройка темыЕсли в JournalX есть отдельный переключатель для архивовБез кода, меньше рискаНе всегда есть нужная гранулярность
Код в дочерней темеЕсли нужен контроль только для архива автораТочно и прозрачноНужно проверить хуки и handles
Правка шаблонаЕсли тема не даёт фильтров и скрипты жёстко зашитыПолный контроль над выводомСложнее сопровождать после обновлений

Проверка результата после внедрения

После изменения откройте архив автора в приватном окне и проверьте:

  • страница не подгружает новые записи при прокрутке;
  • внизу видны ссылки на следующую и предыдущую страницы архива;
  • URL меняется на /page/2/, /page/3/ и т. п.;
  • в DevTools нет лишних AJAX-запросов при скролле;
  • контент первой страницы совпадает с тем, что был до изменения.

Если вы работаете с SEO, дополнительно проверьте, что canonical и robots meta для архивов авторов не конфликтуют с пагинацией. Сам по себе переход на обычные страницы не решает все вопросы индексации, но делает структуру архива предсказуемее.

Частые ошибки и как их исправить

Пагинация есть в HTML, но не видна на странице

Обычно это CSS-проблема. Тема может скрывать блок пагинации, если включён infinite scroll. Проверьте стили вроде display: none, visibility: hidden или нулевые отступы. Иногда достаточно переопределить один класс в дочерней теме.

Скролл отключили, но записи перестали подгружаться вообще

Это значит, что вы отключили не только infinite scroll, но и сам вывод архива. Частая причина — слишком агрессивный wp_dequeue_script или неверный фильтр. Сначала отключайте только механизм подгрузки, а не шаблон архива целиком.

Появились дубли страниц архива

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

Изменение слетело после обновления темы

Значит, правка была внесена в родительскую тему. Перенесите код в дочернюю тему или mu-plugin. Для таких задач это не формальность, а нормальный способ не потерять настройку после апдейта.

Что ещё стоит проверить для производительности и безопасности

Если на архиве автора много записей, обычная пагинация часто работает стабильнее и дешевле по ресурсам, чем бесконечная подгрузка. Это особенно заметно на сайтах с тяжёлыми карточками, блоками рекламы или встроенными видео. В таком случае имеет смысл отдельно проверить кэширование страниц архива и не тянуть на них лишние скрипты.

Если вы используете дополнительные плагины оптимизации, не отключайте их вслепую. Сначала убедитесь, что проблема именно в infinite scroll JournalX. Для чистки дублей и технической оптимизации в экосистеме WPShop иногда используют Clearfy Pro, но в этой задаче он не обязателен: сначала лучше решить вопрос штатным способом темы или точечным кодом.

Когда всё настроено правильно, архив автора становится проще для пользователя и предсказуемее для поддержки: есть страницы, есть ссылки, есть понятный контроль над индексацией и нет лишней фоновой подгрузки там, где она не нужна.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как создать автоматические журналы активности пользователей в WordPress с примерами кода и плагинов
07.01.2026
Как отключить бесконечный скролл в JournalX для отдельных разделов
26.08.2026
Как добавить авторизацию по телефону в WordPress с примерами плагинов и кода
04.01.2026
Как автоматически отмечать новые статьи в WordPress
18.03.2026
Как удалить разные типы скриптов и стилей из WordPress для улучшения производительности
27.04.2026
×
-15%
на премиум-тему
Reboot

Создай сайт мечты
на WordPress!

Купить со скидкой »