Старые страницы, отключенные разделы, тестовые URL и архивы, которые больше не нужны в поиске, часто остаются в индексе дольше, чем ожидается. В результате в выдаче всплывают устаревшие страницы, а в Search Console растет число «Просканировано, но не проиндексировано» или «Страница с альтернативным каноническим URL». Если задача не в полном удалении, а именно в управляемом исключении из индекса, лучше действовать по сценарию: сначала понять, что именно мешает, потом выбрать способ закрытия, а затем проверить, как поисковик это увидел.
Когда проблема действительно в индексации, а не в контенте
Перед правками стоит убедиться, что вы боретесь не с симптомом, а с причиной. Иногда страница не должна ранжироваться не потому, что она «плохая», а потому что это служебный URL, дубль, устаревший материал или раздел, который больше не нужен в поиске.
Типичные признаки
- в поиске показываются старые версии страниц после редизайна или миграции;
- в выдаче есть тестовые, служебные или временные URL;
- архивы, теги или страницы пагинации создают лишний шум;
- в Search Console URL доступен, но не должен индексироваться;
- страница открывается, но в сниппете виден не тот адрес или не тот заголовок.
Если URL уже удален с сайта, но все еще находится в индексе, это отдельный сценарий: тогда нужен либо корректный 410 Gone, либо 301 на релевантную страницу, либо явное исключение через noindex, если страница должна оставаться доступной для пользователей.
Какие есть способы закрыть страницу от индексации
Для WordPress обычно используют три рабочих подхода: мета-тег noindex, заголовок X-Robots-Tag и удаление страницы с сервера с правильным кодом ответа. Выбор зависит от того, должна ли страница открываться пользователю и есть ли у нее замена.
| Способ | Когда подходит | Плюс | Минус |
|---|---|---|---|
noindex | Страница нужна пользователю, но не нужна в поиске | Не ломает доступ | Поисковику нужно время, чтобы переобойти URL |
X-Robots-Tag | Для файлов, нестандартных шаблонов, некоторых служебных URL | Работает на уровне ответа сервера | Нужно аккуратно настраивать сервер или плагин |
410/404 или 301 | Страница больше не нужна | Быстро убирает мусор | Нужно понимать, куда вести пользователей и боты |
Если речь о старых страницах сайта, которые еще должны открываться по прямой ссылке, чаще всего достаточно noindex, follow. Если же URL окончательно удален, не стоит маскировать это под «закрытие от индексации» — лучше отдать корректный статус ответа.
Пошаговое решение без лишних плагинов
Самый предсказуемый вариант — добавить noindex на уровне шаблона или через фильтр, если вы управляете темой или небольшим плагином. Для одиночных страниц это проще, чем ставить отдельный SEO-плагин только ради одной задачи.
1. Добавьте noindex для конкретной страницы
Если нужно закрыть одну страницу, можно использовать условие по ID, слагу или шаблону. Ниже пример для functions.php дочерней темы или мини-плагина:
add_action('wp_head', function () {
if (is_page(array(123, 'staryj-razdel', 'testovaya-stranica'))) {
echo "<meta name=\"robots\" content=\"noindex, nofollow\" />\n";
}
});Этот вариант рабочий, но использовать nofollow стоит только если вы понимаете последствия. Для большинства страниц, которые просто не должны попадать в индекс, достаточно noindex, follow. Так поисковик сможет проходить по ссылкам дальше, не индексируя саму страницу.
add_action('wp_head', function () {
if (is_page(array(123, 'staryj-razdel', 'testovaya-stranica'))) {
echo "<meta name=\"robots\" content=\"noindex, follow\" />\n";
}
});2. Закройте архивы, теги или пагинацию, если они создают мусор
Если проблема не в одной странице, а в типе архивов, лучше работать точечно. Например, теги часто разрастаются в слабые страницы без самостоятельной ценности. Тогда можно закрыть их от индексации, но оставить доступными для навигации.
add_action('wp_head', function () {
if (is_tag() || is_date() || is_author()) {
echo "<meta name=\"robots\" content=\"noindex, follow\" />\n";
}
});Если у вас уже есть отдельная SEO-логика в теме или плагине, не дублируйте мета-теги. Два разных robots на одной странице — частая причина путаницы. Поисковик обычно учитывает более строгую директиву, но вам это не помогает в диагностике.
3. Для удаленных страниц используйте 410 или 301
Если URL больше не нужен, не оставляйте его с noindex навсегда. Это не удаление, а только просьба не индексировать. Для окончательно удаленных материалов лучше вернуть 410 Gone. Если есть релевантная замена — ставьте 301.
add_action('template_redirect', function () {
if (is_page('staryj-razdel')) {
wp_redirect(home_url('/novyj-razdel/'), 301);
exit;
}
});Для полностью удаленного URL без замены можно отдать 410 через серверную логику или отдельный шаблон. В WordPress это обычно делают аккуратно, чтобы не сломать остальные маршруты. Если вы не уверены, лучше не имитировать 410 через HTML-страницу с сообщением об ошибке — поисковик должен увидеть именно код ответа.
Если нужен более удобный способ через SEO-плагин
Когда на сайте уже стоит SEO-плагин, проще использовать его интерфейс, чем писать код для каждой страницы. Это особенно полезно для редакторов, которые сами управляют публикациями. Но даже в этом случае важно проверить, не конфликтуют ли настройки плагина с темой и кастомным кодом.
Если вы используете Clearfy Pro, в нем есть инструменты для чистки сайта и управления SEO-настройками, которые помогают убрать лишние архивы и технический шум. Это не замена пониманию логики индексации, но хороший способ централизовать настройки на сайте с большим количеством шаблонов. Ссылка: Clearfy Pro.
Как проверить, что решение сработало
Проверка нужна не только в браузере. Важно убедиться, что поисковик видит именно то, что вы задумали.
- Откройте страницу в браузере и проверьте исходный код: должен быть один корректный
meta name="robots"или нужный код ответа. - Проверьте заголовки ответа через
curlили DevTools Network. - В Google Search Console используйте проверку URL и посмотрите, как робот видит страницу.
- Если страница удалена, убедитесь, что сервер отдает
410или301, а не обычный200.
Пример быстрой проверки заголовков:
curl -I https://example.com/staryj-razdel/Что должно насторожить: страница визуально закрыта, но в ответе все еще 200 OK; в коде есть два разных robots; редирект ведет на нерелевантную страницу; в Search Console URL продолжает считаться индексируемым из-за канонического адреса или внутренних ссылок.
Частые ошибки и как их исправить
- Ставят
noindexи одновременно закрывают URL вrobots.txt. Так делать не стоит: если бот не может зайти на страницу, он не увидит мета-тегnoindex. Сначала дайте доступ, потом закрывайте от индексации. - Оставляют старые внутренние ссылки. Даже закрытая страница будет постоянно переобходиться, если на нее ссылаются меню, блоки и хлебные крошки.
- Используют
nofollowбез причины. Это не способ «усилить» закрытие. Для большинства служебных страниц достаточноnoindex, follow. - Удаляют страницу, но не настраивают редирект. Пользователь и бот попадают в тупик, а часть ссылочного веса теряется.
- Дублируют логику в теме, плагине и SEO-модуле. В итоге непонятно, кто именно управляет индексированием.
Что проверить после внедрения на сайте
После правки не ограничивайтесь одной страницей. Посмотрите на весь сценарий: как ведут себя архивы, не появились ли новые дубли и не сломалась ли навигация.
- страница открывается с нужным кодом ответа;
- в исходном коде нет лишних мета-тегов robots;
- внутренние ссылки не ведут на удаленный URL;
- в Search Console URL помечен как исключенный или удаленный по вашей логике;
- редиректы не создают цепочки.
Практические советы по безопасности и производительности
Если вы добавляете логику через functions.php, лучше вынести ее в дочернюю тему или небольшой mu-plugin. Так вы не потеряете настройку после обновления темы. Для крупных сайтов это еще и удобнее для аудита: видно, где именно живет правило.
Не плодите десятки условий в шаблоне header.php. Когда список URL растет, проще хранить его в массиве или перейти на управление через админку. Если закрытых страниц много, лучше использовать системный подход: отдельные правила для типов записей, архивов и служебных шаблонов, а не ручные исключения на каждый URL.
Если вам нужно регулярно чистить сайт от дублей, архивов и технического мусора, имеет смысл смотреть не только на точечные правки, но и на общую гигиену индексации. В этом сценарии полезны инструменты, которые помогают централизованно управлять SEO-настройками, а не размазывать их по теме и нескольким плагинам.