Как отключить RSS-ленты в WordPress и сохранить рабочую подписку

Если на сайте не нужны RSS-ленты, их лучше отключать аккуратно: не просто прятать ссылки из шаблона, а закрывать сами точки входа и отдельно решить, что делать с подпиской на записи и комментарии. Иначе в индексе останутся старые URL, а пользователи будут получать пустые или битые ленты.

Когда RSS действительно стоит отключать

Обычно это нужно на корпоративных сайтах, лендингах, проектах с закрытым контентом или там, где ленты уже не используются, но WordPress продолжает отдавать их по умолчанию. Частая ошибка — убрать иконку RSS из темы и считать задачу решённой. На практике URL вида /feed/, /comments/feed/, /category/.../feed/ и похожие продолжают работать.

Что именно отключаем

  • главную RSS-ленту сайта;
  • ленты записей, рубрик, меток и архивов;
  • ленты комментариев, если они не нужны;
  • ссылки на RSS в <head> и в шаблоне темы;
  • при необходимости — редирект старых URL на 404 или на главную.

Диагностика: какие RSS-адреса сейчас открыты

Перед правками проверьте, что реально отдаёт сайт. У WordPress есть несколько стандартных точек входа, и они могут быть доступны даже если вы не используете их в дизайне.

https://example.com/feed/
https://example.com/comments/feed/
https://example.com/category/news/feed/
https://example.com/tag/wordpress/feed/

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

Для быстрой проверки удобно открыть URL в браузере и посмотреть заголовки ответа через DevTools или curl:

curl -I https://example.com/feed/

Нужный результат после отключения — не XML-лента, а контролируемый ответ: 404, 410 или редирект на выбранную страницу. Какой вариант выбрать, зависит от того, хотите ли вы полностью убрать URL из обхода или мягко перенаправить старые обращения.

Пошаговое решение без лишних побочных эффектов

Вариант 1. Отключить RSS кодом в теме или mu-plugin

Если нужен предсказуемый результат без лишних плагинов, проще всего добавить небольшой код в functions.php дочерней темы или в отдельный mu-plugin. Этот вариант хорош тем, что вы контролируете и сами ленты, и ссылки на них в HTML.

<?php
// Отключаем стандартные RSS/Atom-ленты WordPress.
function wp5_disable_feeds() {
    wp_die(
        esc_html__( 'RSS-ленты на этом сайте отключены.', 'textdomain' ),
        esc_html__( 'Feed disabled', 'textdomain' ),
        array( 'response' => 404 )
    );
}

add_action( 'do_feed', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rdf', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss2', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_atom', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss2_comments', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_atom_comments', 'wp5_disable_feeds', 1 );

Этот код не ломает админку и не трогает обычные страницы. Он только перехватывает запросы к feed-эндпоинтам и отдаёт 404. Если вам нужен не 404, а 410, можно заменить wp_die() на собственный вывод с соответствующим кодом ответа, но 404 для большинства сайтов достаточно.

Вариант 2. Убрать ссылки на RSS из <head>

Даже после отключения самих лент WordPress может продолжать печатать ссылки на них в <head>. Это не критично, но создаёт шум и вводит в заблуждение. Убираются они отдельными хуками.

<?php
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );

Если тема выводит RSS-иконки вручную, их тоже нужно убрать в шаблонах. Иначе пользователь увидит ссылку, которая ведёт в 404, даже если сам WordPress уже не отдаёт ленту.

Вариант 3. Оставить ленты, но закрыть их от индексации

Иногда RSS нужен для внешних сервисов или старых подписчиков, но не нужен в поиске. Тогда лучше не отключать его полностью, а оставить доступным и закрыть от индексации на уровне заголовков или robots.txt. Это уже другой сценарий: лента работает, но не должна участвовать в SEO.

Если ваша задача именно убрать RSS как функциональность, а не просто скрыть его от поисковиков, этот вариант не подходит.

Сравнение подходов

ПодходЧто делаетПлюсыМинусы
Код в теме / mu-pluginОтключает feed-эндпоинты и ссылкиКонтроль, без лишних плагиновНужно не забыть про дочернюю тему или mu-plugin
Плагин для чистки WordPressУбирает часть служебных ссылок и функцийБыстро для типовых сайтовНе всегда закрывает все feed-URL
Только robots.txtЗапрещает обходПростоНе отключает саму ленту и не убирает старые URL из доступа

Если нужен именно технически чистый результат, код обычно надёжнее. Плагины удобны, когда вы уже используете их для общей чистки сайта. Например, в Clearfy Pro есть набор функций для удаления лишнего мусора и служебных элементов WordPress, но даже в таком случае полезно проверить, какие именно feed-адреса он закрывает на вашем сайте.

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

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

  • откройте /feed/ и убедитесь, что XML больше не отдаётся;
  • проверьте /comments/feed/;
  • проверьте ленту рубрики или метки;
  • посмотрите исходный код страницы и убедитесь, что ссылки на RSS исчезли из <head>;
  • если есть кэш, очистите его и повторите проверку в инкогнито.

Для серверной проверки удобно использовать заголовки ответа:

curl -I https://example.com/feed/
curl -I https://example.com/comments/feed/

Если вы оставили 404, в ответе должен быть соответствующий статус. Если настроили редирект, проверьте, что он ведёт именно туда, куда вы планировали, и не создаёт цепочку из нескольких переходов.

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

Отключили только ссылки, но не сами ленты

Это самая частая ситуация. Визуально RSS исчезает из шапки, но URL по-прежнему открываются. Исправление простое: добавьте перехват do_feed и связанных хуков, а не ограничивайтесь remove_action для wp_head.

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

Иногда RSS подключён к рассылке, агрегатору или внутреннему сервису. Перед отключением проверьте, нет ли внешних интеграций. Если они есть, лучше не рубить ленту полностью, а оставить её доступной и закрыть только от индексации.

Забыли про кэш

После изменения кода старые XML-ответы могут продолжать отдаваться из page cache или CDN. Очистите кэш плагина, серверный кэш и CDN, затем повторите запросы напрямую.

Редирект ведёт на главную без логики

Редирект на главную кажется удобным, но для старых feed-URL это часто плохой вариант: пользователь и бот получают нерелевантную страницу, а цепочка URL становится нечистой. Если ленты больше не нужны, 404 обычно честнее и понятнее.

Что учесть по безопасности и производительности

Отключение RSS само по себе не даёт серьёзного ускорения, но убирает лишние точки входа и уменьшает количество бесполезных запросов. На больших сайтах это полезно в связке с общей чисткой WordPress: удалением лишних эмодзи, oEmbed, неиспользуемых архивов и служебных ссылок.

Если вы вносите код вручную, лучше делать это в mu-plugin, а не в основной теме. Тогда отключение не пропадёт после смены дизайна. Для сайтов с несколькими редакторами полезно хранить такие технические правки отдельно от визуальной части.

<?php
/**
 * Plugin Name: WP5 Disable Feeds
 */

add_action( 'do_feed', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rdf', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss2', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_atom', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_rss2_comments', 'wp5_disable_feeds', 1 );
add_action( 'do_feed_atom_comments', 'wp5_disable_feeds', 1 );

function wp5_disable_feeds() {
    wp_die( esc_html__( 'RSS-ленты отключены.', 'textdomain' ), '', array( 'response' => 404 ) );
}

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

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

⭐⭐⭐⭐⭐
Как отключить архивы дат в WordPress без потери индексации записей
05.09.2026
Как убрать дубли страниц авторов в WordPress без потери SEO
18.08.2026
Как отключить RSS-ленты в WordPress и сохранить рабочую подписку
14.09.2026
Как отключить XML-RPC в WordPress без потери доступа к сайту
09.09.2026
Как отключить архивные страницы таксономий в WordPress без потери индексации записей
24.08.2026
×
Сделай WordPress мощнее!

Скидка -20% на топовые премиум плагины

Выбрать плагин сейчас ⋙