Как отключить XML sitemap в WordPress и не потерять индексацию

Иногда XML sitemap в WordPress нужно не «улучшить», а именно отключить: сайт уже отдает карту через SEO-плагин, в индексе появились дубли, либо поисковик видит несколько sitemap одновременно. В таких случаях ошибка обычно не в самой карте сайта, а в том, что WordPress, тема и SEO-плагин начинают конкурировать друг с другом.

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

Когда sitemap лучше отключить

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

  • в WordPress 5.5+ включена встроенная карта /wp-sitemap.xml, а SEO-плагин уже генерирует свою;
  • в выдаче видны две карты сайта с разными URL, и поисковик индексирует обе;
  • карта содержит мусорные URL: вложения, архивы, служебные страницы;
  • после миграции остались старые sitemap-адреса, которые отдают 200 и путают обход;
  • сайт использует кастомную логику, и стандартная карта не отражает реальную структуру контента.

Диагностика: что именно конфликтует

Перед правкой проверьте, откуда вообще отдается sitemap. Это можно сделать без доступа к панели SEO-плагина, просто по URL и заголовкам ответа.

Проверьте встроенную карту WordPress

Откройте /wp-sitemap.xml. Если там есть XML с индексом карт, значит встроенный механизм активен. Если вы используете Yoast SEO, Rank Math, All in One SEO или другой SEO-плагин, у вас может быть еще и отдельная карта от него.

Проверьте, нет ли дублей

Сравните адреса, которые реально доступны:

https://example.com/wp-sitemap.xml
https://example.com/sitemap_index.xml
https://example.com/sitemap.xml

Если открываются два или три варианта, это уже повод оставить один источник и остальные закрыть корректным редиректом или 404/410, в зависимости от ситуации.

Посмотрите, что уже отправлено в Search Console

Если в Search Console добавлены старые sitemap-адреса, сначала обновите их там. Иначе вы можете отключить карту на сайте, но поисковик продолжит ходить по старому URL еще какое-то время.

Как отключить встроенный XML sitemap WordPress

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

<?php
add_filter( 'wp_sitemaps_enabled', '__return_false' );

Код можно добавить в functions.php дочерней темы, но на практике надежнее вынести его в небольшой mu-plugin, чтобы он не потерялся при смене темы.

<?php
/**
 * Plugin Name: Disable WP Core Sitemap
 */
add_filter( 'wp_sitemaps_enabled', '__return_false' );

После этого /wp-sitemap.xml должен перестать открываться как XML-карта. Если URL продолжает отдавать контент, проверьте кэш, CDN и правила редиректов.

Если sitemap генерирует SEO-плагин

Тут логика зависит от плагина. У большинства SEO-плагинов есть собственная настройка XML sitemap, и ее лучше выключать в интерфейсе, а не через хаки. Это снижает риск поломать обновления и не требует поддержки кастомного кода.

ПодходКогда использоватьМинус
Настройка в SEO-плагинеЕсли карта нужна, но источник должен быть одинЗависит от интерфейса плагина
Фильтр wp_sitemaps_enabledЕсли нужно отключить встроенную карту WordPressНе влияет на карту SEO-плагина
Редирект старого URLЕсли нужно убрать устаревший адресНе решает проблему дубля, только прячет его

Если вы используете Clearfy Pro, там есть инструменты для чистки лишних элементов и SEO-опций, но в случае sitemap все равно сначала проверьте, какой именно источник карты активен. Не стоит отключать все подряд, если проблема только в одном URL.

Пошаговое решение без потери индексации

  1. Определите, какой sitemap сейчас основной: встроенный WordPress или SEO-плагин.
  2. Отключите лишний источник через настройки плагина или фильтр wp_sitemaps_enabled.
  3. Убедитесь, что основной sitemap отвечает 200 OK и содержит только нужные URL.
  4. Старые sitemap-адреса закройте редиректом на новый индекс или отдайте 410 Gone, если они больше не должны существовать.
  5. Обновите sitemap в Search Console и дождитесь повторного обхода.

Если у вас есть старый адрес /sitemap.xml, а новый — /sitemap_index.xml, редирект должен быть однозначным. Не делайте цепочку из нескольких переходов: поисковый робот и так не любит лишние шаги.

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^sitemap\.xml$ /sitemap_index.xml [R=301,L]
</IfModule>

Для Nginx правило будет другим, и его лучше добавлять в конфиг сервера, а не в PHP:

location = /sitemap.xml {
    return 301 /sitemap_index.xml;
}

Как проверить, что решение сработало

Проверка должна быть не «страница открывается», а набором конкретных признаков:

  • /wp-sitemap.xml больше не отдает XML, если вы отключали встроенную карту;
  • основной sitemap отвечает 200 OK без ошибок валидации;
  • старые sitemap-адреса отдают 301 на новый URL или 410, если вы их удалили;
  • в Search Console отображается только один актуальный sitemap;
  • внутри карты нет лишних типов записей, архивов и служебных страниц.

Проверить статус ответа можно через curl:

curl -I https://example.com/wp-sitemap.xml
curl -I https://example.com/sitemap_index.xml

Если у вас включен кэш страницы или CDN, очистите их до проверки. Иначе вы можете увидеть старый ответ и решить, что код не сработал.

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

Отключили карту, но URL все еще открывается

Чаще всего это кэш, а не ошибка кода. Проверьте серверный кэш, плагин кеширования и CDN. Если ответ все равно старый, значит правило редиректа или фильтр не применился.

Удалили sitemap, но забыли про Search Console

Поисковик продолжает ходить по старому адресу, пока вы не обновите его вручную. Это не критично, но создает шум в отчетах и мешает диагностике.

Оставили два источника sitemap одновременно

Это самая неприятная ситуация. WordPress и SEO-плагин могут оба генерировать карты, а в результате в индексе появляются дубли. Оставляйте один источник и документируйте, где именно он включен.

Сделали редирект на HTML-страницу

Для sitemap это плохой вариант. Робот ожидает XML или корректный статус удаления. Редирект должен вести на другой sitemap, а не на главную или на произвольную страницу.

Безопасность и производительность

Отключение лишней карты сайта само по себе не ускорит сайт заметно, но уменьшит количество бесполезных запросов и упростит SEO-логику. Главное — не вносить правки прямо в родительскую тему, если у вас нет дочерней темы или mu-plugin.

Если правите код вручную, держите в голове три вещи:

  • не ломайте XML-ответы редиректами на HTML;
  • не отключайте sitemap, пока не убедились, что другой источник уже работает;
  • не забывайте про кэш и Search Console после изменений.

Если вам нужно не только отключить лишние sitemap, но и почистить SEO-дубли, служебные страницы и лишние элементы в WordPress, удобно делать это через Clearfy Pro: https://wpshop.ru/plugins/clearfy. Но даже в этом случае сначала проверьте, какой именно sitemap у вас активен, и не отключайте все SEO-опции подряд.

Если после отключения карты вы видите просадку в обходе страниц, проблема обычно не в sitemap, а в структуре внутренних ссылок, robots.txt или фильтрах SEO-плагина. Тогда уже нужно разбирать конкретный сценарий, а не возвращать карту «на всякий случай».

Как отключить архивные страницы авторов в WordPress без потери индексации
28.09.2026
Как отключить XML sitemap в WordPress и не потерять индексацию
01.10.2026