На небольших и средних сайтах WordPress часто всплывает одна и та же проблема: в индексе оказываются служебные XML Sitemap, архивы автора без полезного контента, а иногда еще и страницы, которые не должны конкурировать с основными URL. Это не про «чистку ради чистки». Обычно задача проще: убрать из индекса технические точки входа, которые не дают трафика, но создают шум для поисковиков и лишнюю поверхность для сканирования.
Ниже разберем два частых сценария: как закрыть открытые XML Sitemap, если они отдаются не теми плагинами или дублируются, и как отключить архивы автора там, где они не нужны. Решение подойдет для типового WordPress-сайта без сложной мультиредакции и без отдельной логики под несколько авторов.
Когда это действительно проблема
Не каждый sitemap нужно трогать. Если у вас один корректный XML Sitemap от SEO-плагина и он отдает только нужные URL, ничего отключать не надо. Но если в выдаче появляются:
- несколько sitemap-индексов одновременно;
- архивы автора с пустыми или почти пустыми страницами;
- страницы, которые дублируют основной контент через архивы;
- служебные URL, которые не должны индексироваться вообще;
тогда имеет смысл проверить, кто именно генерирует эти адреса и можно ли отключить их без побочных эффектов.
Быстрая диагностика
Сначала посмотрите, какие sitemap реально доступны на сайте. В WordPress 5.5+ базовый XML Sitemap есть из коробки, но SEO-плагины часто подменяют или дополняют его. Проверьте:
/wp-sitemap.xml— встроенный sitemap WordPress;/sitemap_index.xml— часто от Yoast, Rank Math и похожих плагинов;/author/— архивы авторов;/author/имя/— конкретные страницы автора.
Если sitemap открывается, но вы не используете его как основной источник для поисковиков, это уже повод понять, не дублирует ли он другой sitemap. Архивы автора стоит проверять отдельно: если на сайте один автор и архив не несет ценности, его обычно проще отключить.
Как отключить встроенный XML Sitemap WordPress
Если вы используете SEO-плагин, который сам генерирует sitemap, встроенный вариант WordPress часто становится лишним. Его можно отключить через фильтр wp_sitemaps_enabled. Это безопаснее, чем пытаться закрывать URL через robots.txt: поисковик просто не увидит карту сайта, а не будет тратить время на ее обход.
<?php
add_filter( 'wp_sitemaps_enabled', '__return_false' );
Код лучше добавить в дочернюю тему или в небольшой mu-plugin, если вы не хотите зависеть от темы. После этого /wp-sitemap.xml должен отдавать 404 или редирект в зависимости от конфигурации сайта и кэша.
Если sitemap нужен только для части контента
Иногда отключать sitemap целиком не стоит. Например, вы хотите оставить карту сайта для записей, но убрать страницы вложений или служебные типы записей. Тогда лучше работать через фильтры WordPress, а не рубить все сразу. Для базового sitemap ядра это уже менее удобно, поэтому на практике чаще отключают встроенный вариант и оставляют sitemap от SEO-плагина, где есть понятные настройки исключений.
Как убрать архивы автора без поломки сайта
Если на сайте один автор или архивы автора не дают пользы, их можно отключить на уровне WordPress. Самый простой вариант — закрыть архивы автора от индексации и не показывать их как рабочие страницы. Но если нужна именно деактивация, а не noindex, используйте фильтр author_link только осторожно: он влияет на генерацию ссылок, а не на сам архив.
Практичнее сделать так: отключить архивы автора через редирект или через проверку в шаблоне. Для большинства сайтов достаточно редиректа на главную или на страницу «О сайте», если архив не нужен пользователям.
<?php
add_action( 'template_redirect', function () {
if ( is_author() ) {
wp_redirect( home_url( '/' ), 301 );
exit;
}
} );
Если архивы автора нужны для навигации, но не должны индексироваться, лучше не редиректить их, а закрыть от индексации через SEO-плагин или мета-тег robots. Это разные задачи: редирект убирает страницу из обращения, noindex оставляет ее доступной людям, но не поисковику.
Когда архив автора лучше не отключать
Не трогайте архивы автора, если:
- на сайте несколько авторов и у каждого есть собственная экспертная страница;
- архив автора используется как витрина материалов;
- в шаблоне архива есть уникальный текст, описание и полезные ссылки;
- на архивы уже идет внутренний трафик.
В таких случаях правильнее доработать шаблон архива, а не удалять его.
Сравнение подходов: плагин, код, robots.txt
| Подход | Что делает | Плюсы | Минусы |
|---|---|---|---|
| SEO-плагин | Отключает sitemap или архивы через интерфейс | Быстро, без кода | Зависит от плагина и его логики |
| Код в теме / mu-plugin | Точный контроль через хуки WordPress | Прозрачно и предсказуемо | Нужно аккуратно тестировать |
| robots.txt | Просит не сканировать URL | Просто добавить | Не гарантирует удаление из индекса и не решает дубли |
Если задача именно техническая, код обычно надежнее. Если у вас уже стоит SEO-плагин и в нем есть нужные переключатели, проще использовать интерфейс. robots.txt оставьте для ограниченных случаев, когда нужно снизить обход, а не убрать URL из индекса.
Проверка результата после внедрения
После изменений не ограничивайтесь открытием страницы в браузере. Проверьте несколько вещей:
/wp-sitemap.xmlили/sitemap_index.xml— что реально отдается;/author/и конкретные архивы автора — есть ли редирект или noindex;- HTTP-статус ответа через DevTools,
curlили любой HTTP checker; - нет ли кэшированной старой версии в плагине кэша или CDN;
- не остались ли ссылки на отключенные sitemap в robots.txt или в настройках SEO-плагина.
Пример быстрой проверки через консоль:
curl -I https://example.com/wp-sitemap.xml
curl -I https://example.com/author/admin/
Если вы видите 301 на главную для архива автора, это ожидаемо только в том случае, если вы сознательно выбрали редирект. Если sitemap продолжает открываться после отключения, почти всегда виноват кэш или второй плагин, который генерирует карту сайта параллельно.
Частые ошибки и как их исправить
- Отключили встроенный sitemap, но остался sitemap от SEO-плагина. Это не ошибка, если именно он нужен. Ошибка начинается, когда в индексе появляются две карты сайта вместо одной.
- Закрыли архивы автора через robots.txt. Поисковик может продолжить видеть URL по внутренним ссылкам. Если нужен реальный эффект, используйте noindex или редирект.
- Поставили 301 на все архивы автора без проверки. На многoавторском сайте это ломает навигацию и может убрать полезные страницы из обхода.
- Не очистили кэш. После правок старые sitemap и архивы могут еще какое-то время отдаваться из кэша страницы, CDN или плагина оптимизации.
- Смешали отключение sitemap и удаление URL из индекса. Это разные задачи. Sitemap — про обнаружение, noindex — про индексацию, редирект — про замену адреса.
Что проверить на сайте после чистки
- в sitemap остались только нужные типы контента;
- архивы автора не создают пустые страницы;
- внутренние ссылки не ведут на отключенные URL;
- нет цепочек редиректов;
- в Search Console не растет число «Просканировано, но не проиндексировано» из-за мусорных URL.
Практические советы по безопасности и производительности
Если вы вносите такие правки через код, не редактируйте functions.php на боевом сайте через админку. Лучше использовать дочернюю тему, mu-plugin или хотя бы Git-деплой. Так вы не потеряете изменения после обновления темы.
Для сайтов, где часто меняются SEO-настройки, удобнее держать технические правки отдельно от шаблона. Это снижает риск случайно сломать сайт при обновлении. Если нужен более системный подход к чистке дублей, служебных страниц и технических настроек, можно посмотреть в сторону Clearfy Pro: https://wpshop.ru/plugins/clearfy?utm_source=wplancer.ru&utm_medium=article&utm_campaign=kak-otklyuchit-otkrytye-xml-sitemap-arkhivy-v-wordpress
Главная мысль простая: не отключайте то, что работает на SEO, только потому что это выглядит как «служебное». Сначала проверьте, кто генерирует URL, затем решите, нужен ли он людям, и только после этого убирайте его из обхода или индекса.