Как закрыть от индексации технические страницы WordPress

В WordPress чаще всего индексируются не те страницы, которые реально нужны пользователю: служебные архивы, вложения, страницы пагинации в неподходящих местах, результаты фильтров, версии для печати, служебные URL плагинов. Проблема обычно не в одной настройке, а в наборе мелких решений: где-то нужен noindex, где-то достаточно nofollow, а где-то страницу лучше вообще не отдавать поисковику через robots.txt или редирект.

Если закрывать всё подряд, можно случайно убрать из индекса полезные разделы. Если не закрывать ничего, в индексе копятся дубли и мусорные URL, которые съедают краулинговый бюджет и мешают нормальной индексации контента. Ниже — рабочая схема, как пройтись по типовым техстраницам и не сломать SEO.

Какие страницы WordPress обычно не должны попадать в индекс

Сначала полезно разделить URL на три группы. Это помогает не путать noindex, disallow и редирект. Для поисковика это разные сигналы, и они решают разные задачи.

Служебные и малополезные страницы

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

Дубли контента и технические копии

Это страницы, которые повторяют основной материал: версии с параметрами ?replytocom=, ?amp при некорректной настройке, страницы печати, UTM-страницы, если они создают отдельные URL, а также вложения-медиа, которые открываются как отдельные страницы без полезного текста. Здесь часто лучше не только закрыть от индексации, но и убрать источник дубля.

URL, которые вообще не должны существовать для пользователя

Если страница не нужна ни поисковику, ни посетителю, правильнее не прятать её через noindex, а отдавать 404/410 или делать редирект на каноническую страницу. Это касается старых служебных шаблонов, устаревших страниц вложений и некоторых технических endpoint-ов плагинов.

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

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

  • Откройте Google Search Console и посмотрите отчёт по страницам с исключениями и проиндексированным URL.
  • Проверьте сайт через запросы вида site:example.com и site:example.com inurl:attachment, site:example.com inurl:search.
  • Сравните список URL в карте сайта с тем, что реально должно индексироваться.
  • Посмотрите исходный код нескольких проблемных страниц: есть ли meta name="robots" и какой там статус.
  • Проверьте, не закрыт ли URL только в robots.txt без noindex — это частая причина «висящих» дублей в индексе.

Если страница уже в индексе, одного Disallow в robots.txt обычно недостаточно: поисковик может продолжать хранить URL без возможности переобхода и без сигнала на удаление. Для удаления из индекса чаще нужен noindex или редирект/404 в зависимости от сценария.

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

Ниже — практичная последовательность. Её можно применять вручную в теме, через SEO-плагин или комбинированно. Главное — не смешивать все методы в одну кучу.

Шаг 1. Закройте архивы, которые не несут ценности

Если на сайте есть архивы автора, даты или вложений, и они не нужны как отдельные посадочные страницы, добавьте noindex,follow. Для архивов вложений лучше ещё и настроить редирект на сам файл или на родительскую запись, если это уместно.

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_author() || is_date() ) {
        $robots['noindex']  = true;
        $robots['nofollow'] = false;
    }

    if ( is_attachment() ) {
        $robots['noindex']  = true;
        $robots['nofollow'] = true;
    }

    return $robots;
} );

Этот способ опирается на стандартный фильтр wp_robots, который есть в современных версиях WordPress. Он безопаснее, чем ручная печать meta-тега в шаблоне, потому что не ломает остальные правила robots.

Шаг 2. Уберите страницы поиска из карты сайта и из индексации

Страницы внутреннего поиска не должны попадать в sitemap и почти всегда должны быть noindex. Если у вас уже есть отдельная статья про закрытие поиска, здесь достаточно напомнить: не ограничивайтесь только robots.txt. Поисковик должен получить явный сигнал noindex на самой странице.

Если тема или плагин выводят поиск как отдельный архивный URL, проверьте, не создаётся ли у него канонический дубль на главную или на пустой результат поиска. Для пустых поисковых выдач лучше не плодить индексируемые URL вообще.

Шаг 3. Закройте страницы с параметрами, если они создают дубли

Фильтры, сортировки и UTM-параметры часто создают десятки URL с одинаковым контентом. Если это не критично для SEO, такие страницы лучше не индексировать. Здесь есть два варианта: либо на уровне шаблона отдавать canonical на чистый URL, либо закрывать страницы с параметрами через noindex.

<?php
add_action( 'wp_head', function() {
    if ( ! is_admin() && ! empty( $_GET ) ) {
        $tracked_params = array( 'utm_source', 'utm_medium', 'utm_campaign', 'sort', 'filter' );
        foreach ( $tracked_params as $param ) {
            if ( isset( $_GET[ $param ] ) ) {
                echo '<meta name="robots" content="noindex,follow" />' . "\n";
                break;
            }
        }
    }
} );

Это упрощённый пример. В реальном проекте лучше не проверять «все параметры подряд», а явно перечислить те, которые действительно создают дубли. Иначе можно случайно закрыть полезные страницы.

Шаг 4. Для мусорных URL используйте редирект или 404

Если страница не должна существовать, не маскируйте её под noindex. Например, старые страницы вложений без контента, устаревшие служебные URL или битые маршруты лучше отдавать как 404/410 либо перенаправлять на релевантную страницу. Это быстрее вычищает мусор из индекса и не создаёт лишнюю нагрузку на обход.

В WordPress для редиректа вложений часто достаточно настроить поведение медиафайлов в теме или плагине, но если логика сложнее, лучше делать это в коде осознанно, а не через случайные правила в .htaccess.

Сравнение подходов: плагин, код или robots.txt

ПодходКогда подходитМинус
SEO-плагинЕсли нужно быстро закрыть типовые архивы и задать meta robots без разработкиЛегко накопить конфликт настроек между плагином и темой
Код в теме или mu-pluginЕсли нужна точечная логика для конкретных шаблонов и параметровТребует проверки после обновлений темы
robots.txtЕсли нужно ограничить обход, но не обязательно удалять URL из индексаНе решает задачу удаления уже проиндексированных страниц

На практике часто лучше комбинировать: robots.txt — для ограничения обхода, noindex — для удаления из индекса, редирект/404 — для несуществующих страниц. Один инструмент не закрывает все сценарии.

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

После правок не стоит сразу считать задачу закрытой. Нужно проверить и HTML, и ответ сервера, и то, как URL видит поисковик.

  • Откройте проблемную страницу в браузере и проверьте исходный код: есть ли meta name="robots" content="noindex,follow".
  • Проверьте заголовки ответа, если используете серверные правила: не должно быть конфликтов между HTTP-заголовком и meta-тегом.
  • Убедитесь, что URL не попал в sitemap.
  • В Search Console отправьте страницу на повторную проверку или используйте проверку URL.
  • Через несколько обходов проверьте, исчез ли URL из отчёта по индексированию.

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

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

Закрыли в robots.txt, но не поставили noindex

Это самая частая ошибка. Страница перестаёт обходиться, но уже проиндексированный URL может висеть в выдаче. Исправление простое: временно откройте доступ для обхода, добавьте noindex, дождитесь переобхода и только потом при необходимости снова ограничивайте обход.

Поставили noindex на всё подряд

Иногда под фильтр попадают категории, записи, страницы пагинации или важные посадочные. Это уже не техническая чистка, а случайная деиндексация. Проверяйте условия: is_author(), is_date(), is_attachment(), конкретные шаблоны и параметры, а не абстрактное «если не главная».

Дублируют настройки плагин и тема

Если SEO-плагин уже выводит robots meta, а тема добавляет свой тег вручную, можно получить конфликтующие директивы. В результате поисковик увидит несколько сигналов и выберет не тот, который вы ожидали. Оставьте один источник правды: либо плагин, либо код.

Закрыли URL, но оставили его в sitemap

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

Практические советы по безопасности и производительности

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

  • Не храните логику индексации в нескольких местах: в теме, в плагине и в .htaccess одновременно.
  • Если правите кодом, выносите его в mu-plugin, а не в активную тему, если логика должна переживать смену дизайна.
  • Не закрывайте через robots.txt то, что нужно удалить из индекса: это замедляет очистку.
  • Проверяйте, не создаёт ли плагин фильтров отдельные URL с параметрами, которые можно отключить без потери функциональности.

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

Когда вы видите в индексе лишние страницы, не начинайте с массового удаления. Сначала определите тип URL, потом выберите метод: noindex, canonical, редирект или 404. Это самый надёжный способ не потерять полезные страницы вместе с мусором.

Как удалить автосохранения и ревизии записей из базы данных WordPress
02.10.2026
Как отключить XML-RPC в WordPress и не сломать нужные интеграции
24.09.2026
Как отключить XML-RPC в WordPress и не сломать внешние интеграции
29.09.2026
Как использовать WP Rollback для отката версии плагинов в WordPress
03.10.2026
Как автоматизировать создание бэкапов в WordPress с помощью WPRemark
02.10.2026

Мы занимаемся разработкой приложений и плагинов для WordPress. Ниже предлагаем ознакомиться с ними.