wpcompany.ru wordpress WPCompany

Как отключить автопробег постов в WordPress

В WordPress при публикации поста иногда возникает ситуация, когда заголовок или содержимое автоматически преобразуются в ссылки на следующий или предыдущий пост (автопробег, автолинки). Это может быть нежелательным эффектом, особенно если вы используете кастомные темы или плагины, которые влияют на навигацию по статьям. В этой статье мы подробно разберем, как отключить автопробег постов, чтобы избежать нежелательных ссылок и сохранить контроль над выводом контента.

Что такое автопробег постов и почему его стоит отключать

Автопробег постов — это механизм, при котором WordPress автоматически добавляет ссылки на следующую и предыдущую запись, чаще всего в конце поста или в определенных местах шаблона. Это полезная функция для блога или новостного сайта, чтобы увеличить время пребывания пользователя, но в ряде случаев она мешает, например:

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

Отключение автопробега поможет избежать конфликтов и сделать сайт более предсказуемым в поведении.

Способы отключения автопробега постов в WordPress

Ниже рассмотрим несколько популярных методов отключения автопробега — от простых до более продвинутых.

Отключение через функции темы (functions.php)

Автопробег обычно реализуется через функции previous_post_link() и next_post_link() или через хуки, добавляющие их в контент. Чтобы убрать автопробег, можно удалить эти функции из вывода. Если ваша тема выводит автопробег автоматически, попробуйте добавить в functions.php вашей темы следующий код:

function wpcompany_disable_autoprobeg() {
    remove_action('the_content', 'previous_post_link');
    remove_action('the_content', 'next_post_link');
}
add_action('init', 'wpcompany_disable_autoprobeg');

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

Перекрытие шаблонов навигации

В современных темах WordPress навигация постов может быть реализована через шаблонные части (template-parts) или функции, такие как the_post_navigation(). Чтобы отключить автопробег, можно переопределить эти функции или шаблоны.

Например, отключение функции навигации в single.php:

// В файле single.php закомментируйте или удалите строку:
the_post_navigation();

Если вы хотите оставить навигацию, но сделать её кастомной, можно написать свою функцию, например:

function wpcompany_custom_post_navigation() {
    // Здесь ваша кастомная логика навигации или пустой вывод
}

И подключить её вместо стандартной.

Использование плагинов для управления навигацией

Если вы не хотите лезть в код, можно использовать плагины, которые позволяют управлять навигацией между постами. Например, плагин Clearfy Pro содержит опции по отключению автопробега и другой автоматической навигации.

После установки и активации плагина перейдите в настройки Clearfy и найдите раздел, отвечающий за навигацию постов, там можно отключить нежелательные элементы.

Пример реализации отключения автопробега через фильтр контента

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

function wpcompany_remove_autoprobeg_links($content) {
    // Удаляем ссылки на предыдущий пост
    $content = preg_replace('/<a href="[^"]*" rel="prev">.*?<\/a>/i', '', $content);
    // Удаляем ссылки на следующий пост
    $content = preg_replace('/<a href="[^"]*" rel="next">.*?<\/a>/i', '', $content);
    return $content;
}
add_filter('the_content', 'wpcompany_remove_autoprobeg_links', 20);

Этот код ищет ссылки с атрибутами rel="prev" и rel="next" и удаляет их из выводимого контента.

Проверка и отладка

После внесения изменений обязательно проверьте работу сайта на страницах постов. Если автопробег исчез, значит задача решена.

Если автопробег не пропал, проверьте:

  • Используемую тему и её файлы single.php, content-single.php, template-parts.
  • Активные плагины, которые могут добавлять навигацию.
  • Наличие кэширования, которое нужно очистить после изменений.

Для отладки полезно использовать плагин WPRemark, который позволяет анализировать фильтры и хуки, применяемые к контенту.

Выводы по отключению автопробега в WordPress

Автопробег постов — удобная, но не всегда желательная функция. Отключить её можно разными способами: от удаления вызовов в шаблоне до фильтрации контента. При необходимости использования плагинов советуем обратить внимание на Clearfy Pro и WPRemark — они помогут гибко управлять функционалом сайта.

×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше