Как запретить индексацию отдельных типов страниц в WordPress через meta robots

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

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

Что именно нужно закрыть от индексации

Сначала полезно разделить задачи. robots.txt управляет обходом, а meta robots — индексацией уже доступной страницы. Если страница должна открываться пользователю, но не попадать в поиск, нужен именно noindex. Если же URL вообще не должен обходиться, это уже другая задача и другой инструмент.

Типичные кандидаты на noindex

  • страницы вложений медиафайлов;
  • внутренний поиск WordPress с URL вида ?s=;
  • архивы автора на небольших сайтах без редакционной ценности;
  • пустые архивы рубрик и меток;
  • служебные страницы с дублирующимся контентом;
  • некоторые страницы пагинации, если они создают мусор в индексе.

Диагностика: где именно возникает проблема

Перед правкой проверьте, какие URL уже индексируются и какой тег robots отдает страница. Это важно: иногда разработчик ставит noindex в одном шаблоне, а дубли продолжают жить в другом.

Что проверить вручную

  1. Откройте проблемную страницу в браузере.
  2. Посмотрите исходный код и найдите <meta name="robots".
  3. Проверьте, нет ли одновременно index и noindex из разных плагинов.
  4. Сравните канонический URL и фактический адрес страницы.

Если у вас есть доступ к консоли, можно быстро проверить заголовки и мета-тег через curl:

curl -L https://example.com/?s=test | grep -i robots

Для архивов и вложений полезно посмотреть, не создаются ли они автоматически темой или SEO-плагином. Частая ситуация: плагин уже ставит noindex, а в теме есть второй, конфликтующий вывод мета-тегов.

Пошаговое решение через код

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

Пример: noindex для поиска, вложений и архивов автора

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

    return $robots;
});

Этот вариант использует встроенный фильтр WordPress wp_robots. Он подходит для современных версий ядра и не требует отдельного SEO-плагина. Если на сайте уже есть SEO-плагин, сначала проверьте, не дублирует ли он эти правила.

Пример: закрыть от индексации пустые рубрики и метки

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

<?php
add_filter('wp_robots', function(array $robots) {
    if (is_category() || is_tag() || is_tax()) {
        $term = get_queried_object();

        if ($term instanceof WP_Term) {
            $count = (int) $term->count;
            if ($count === 0) {
                $robots['noindex'] = true;
                $robots['nofollow'] = true;
            }
        }
    }

    return $robots;
});

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

Когда лучше использовать SEO-плагин, а не код

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

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

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

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

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

Чек-лист проверки

  • в исходном коде есть <meta name="robots" content="noindex, nofollow"> или эквивалентный вариант;
  • нет второго мета-тега robots от другого плагина;
  • канонический URL указывает на нужную страницу, а не на дубль;
  • страница доступна пользователю без ошибок 404/403;
  • в Search Console после переобхода статус меняется в нужную сторону.

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

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

1. Путают noindex и disallow

Disallow в robots.txt не удаляет URL из индекса, если он уже известен поисковику. Для служебных страниц, которые должны открываться, но не индексироваться, нужен noindex.

2. Ставят noindex на все архивы подряд

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

3. Получают конфликт двух источников правил

Если SEO-плагин выводит index, follow, а тема — noindex, итог может быть непредсказуемым. Уберите дублирующий код и оставьте один источник правды.

4. Закрывают страницу, но забывают про каноникал

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

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

Технически noindex почти не влияет на скорость сайта, но сам способ внедрения может создать лишнюю нагрузку. Не стоит добавлять тяжелые проверки в каждый запрос, если правило можно ограничить конкретными шаблонами.

  • Используйте mu-plugin, если правило должно работать независимо от темы.
  • Не дублируйте логику в нескольких плагинах.
  • После обновления темы перепроверьте, не появился ли второй вывод meta robots.
  • Для массовой чистки дублей сначала снимите проблему на уровне шаблонов, а не только через мета-тег.

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

Когда noindex не поможет

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

Для WordPress-проектов с большим количеством технических страниц правильный порядок обычно такой: сначала определить тип дубля, затем выбрать между noindex, каноникал, редиректом и ограничением доступа. Это экономит время и не создает ложного ощущения, что проблема закрыта.

Как автоматизировать создание и обновление sitemap в WordPress
07.04.2026
Как автоматически отключить доступ к REST API в WordPress для незарегистрированных пользователей
04.03.2026
Как использовать хуки для изменения функционала WordPress: подробное руководство
17.11.2025
Как удалить старые кэши и оптимизировать базу данных WordPress для ускорения сайта
25.02.2026
Как разделить двухколоночный контекст в WordPress: практическое руководство
09.11.2025
×

AI-плагин от WPShop.ru

анализирует конкурентов

пишет статьи

готовит SEO

генерирует изображения

и еще кое-что...
WPGPT
Плагин, который наполняет ваш сайт WordPress
Узнать больше