Как закрыть от индексации страницы архива товаров в WordPress без поломки навигации

На WordPress часто нужно закрыть от индексации не весь сайт, а только конкретный тип страниц: архивы товаров, служебные листинги, результаты фильтров, страницы с параметрами сортировки. Ошибка здесь типовая: ставят noindex на всё подряд или, наоборот, закрывают URL в robots.txt и потом удивляются, что Google продолжает держать их в индексе как «известный URL без описания».

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

Когда архив товаров действительно нужно закрывать

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

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

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

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

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

Что смотреть в первую очередь

  • поисковый оператор site:example.com по шаблону URL;
  • отчёт «Страницы» в Google Search Console;
  • исходный код страницы: есть ли noindex, canonical, robots;
  • параметры в URL: ?orderby=, ?filter_, ?page=;
  • логи обхода, если есть доступ к серверу или аналитике.

Если страница уже в индексе, а вы просто закрыли её в robots.txt, это не удалит URL из выдачи сразу. Для удаления нужен либо noindex, либо корректный canonical, либо запрос на удаление в Search Console, если страница должна исчезнуть быстро.

Рабочие способы: плагин, код или настройка шаблона

Для WordPress есть три нормальных подхода. Выбор зависит от того, есть ли у вас доступ к коду темы и насколько часто меняется логика индексации.

ПодходКогда подходитМинус
SEO-плагинНужно быстро закрыть архивы, таксономии, параметрыНе всегда удобно для точечных условий
Код в теме или плагинеНужна точная логика для конкретных URLТребует аккуратного тестирования
Настройка шаблона архиваАрхивы генерируются вашей темойМожно сломать каноникал или пагинацию

Если у вас уже стоит SEO-плагин, сначала проверьте его настройки. Часто этого достаточно, и лезть в код не нужно.

Вариант 1: закрыть архив через SEO-плагин

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

Проверьте:

  • настройки индексации архивов;
  • мета-тег robots в исходнике;
  • канонический URL на самой странице;
  • не отключена ли пагинация целиком.

Важно: если архив нужен для переходов пользователей, не закрывайте его через robots.txt. Лучше оставить доступным, но поставить noindex,follow, если ваша SEO-логика это допускает.

Вариант 2: добавить noindex через код

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

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_post_type_archive( 'product' ) ) {
        $robots['noindex'] = true;
        $robots['follow']  = true;
    }

    return $robots;
} );

Этот пример закрывает архив товаров, но оставляет переходы по ссылкам доступными для обхода. Если у вас другой тип записи, замените product на свой slug.

Если нужно закрыть архив только при наличии определённого параметра в URL, условие можно расширить:

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_post_type_archive( 'product' ) && isset( $_GET['orderby'] ) ) {
        $robots['noindex'] = true;
        $robots['follow']  = true;
    }

    return $robots;
} );

Здесь важно не использовать значение из $_GET напрямую в выводе и не строить на нём HTML. Для проверки условия этого достаточно, но для более сложной логики лучше нормализовать параметры отдельно.

Вариант 3: закрыть только служебные параметры

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

Например, для страниц с ?orderby= можно добавить noindex на уровне шаблона:

<?php
add_filter( 'wp_robots', function( array $robots ) {
    if ( is_post_type_archive( 'product' ) && ! empty( $_GET['orderby'] ) ) {
        $robots['noindex'] = true;
        $robots['follow']  = true;
    }

    return $robots;
} );

Такой подход полезен, когда базовый архив нужен в индексе, а все вариации сортировки — нет.

Что делать с canonical и пагинацией

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

Пагинацию не стоит ломать без причины. Если у вас много товаров, страницы /page/2/, /page/3/ и дальше могут быть полезны для обхода. Закрывать их от индекса можно, но только если вы понимаете, что делаете и не теряете внутреннюю структуру каталога.

Проверяйте:

  • canonical указывает на основной URL без параметров;
  • на страницах с параметрами стоит noindex;
  • пагинация не ведёт на 404;
  • внутренние ссылки не дублируют десятки вариантов одного и того же листинга.

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

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

  1. Откройте страницу архива в браузере и посмотрите исходный код.
  2. Убедитесь, что в <meta name="robots"> или в HTTP-эквиваленте есть нужная директива.
  3. Проверьте canonical: он должен вести на правильный URL.
  4. В Search Console отправьте страницу на повторную проверку.
  5. Через несколько дней посмотрите, изменилась ли статусная строка в отчёте об индексировании.

Если у вас есть доступ к командной строке, полезно проверить заголовки ответа:

curl -I https://example.com/product/

Ищите не только X-Robots-Tag, но и редиректы, которые могут мешать корректной обработке страницы.

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

Закрыли URL в robots.txt вместо noindex

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

Поставили noindex на весь архив, хотя нужен только фильтр

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

Сломали canonical на страницах пагинации

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

Добавили код в functions.php и забыли про обновления темы

После смены темы правка исчезнет. Если логика нужна надолго, лучше вынести её в мини-плагин или mu-plugin.

Мини-чек-лист перед публикацией изменений

  • Понял, какие именно URL нужно закрыть: архив, фильтр, сортировка или пагинация.
  • Проверил, не нужен ли этот URL как посадочная страница.
  • Добавил noindex только на нужные шаблоны.
  • Проверил canonical на чистую версию страницы.
  • Убедился, что внутренние ссылки не ведут на мусорные параметры.
  • Отправил страницу на повторную проверку в Search Console.

Практика по безопасности и поддержке

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

Для повторяющихся задач по чистке дублей и управлению индексированием удобнее держать логику централизованно. Если вы используете набор SEO- и cleanup-настроек, посмотрите на Clearfy Pro — он как раз закрывает часть типовых задач по дублям и технической чистке, но всё равно требует ручной проверки на конкретном сайте.

Главное правило здесь простое: не прячьте от индекса то, что должно работать как нормальная посадочная страница, и не оставляйте в индексе URL, которые создают только мусор и дубли. В WordPress это обычно решается точечной настройкой, а не «тотальным запретом» на уровне всего сайта.

Добавь в закладки и поделись с друзьями:

⭐⭐⭐⭐⭐
Как убрать дубли страниц авторов в WordPress без потери SEO
18.08.2026
Как отключить XML-RPC в WordPress без потери доступа к сайту
09.09.2026
Как закрыть от индексации страницы архива товаров в WordPress без поломки навигации
21.08.2026
Как закрыть от индексации страницы поисковой выдачи WordPress без поломки поиска
14.08.2026
Как отключить XML-RSS карты сайта в WordPress без потери индексации важных страниц
28.08.2026
×

AI-плагин

WPGPT
Сам создает статьи для вашего сайта WordPress

SEO и мета-теги

Парсинг конкурентов

Изображения

Комментарии

Подробнее