На WordPress архивы товаров часто начинают индексироваться сами по себе: страницы категорий, меток, пагинация, иногда служебные фильтры. В результате в поиске появляются дубли, а вместо полезных посадочных страниц робот тратит обход на мусорные URL. Если у вас не интернет-магазин как основной сценарий, а каталог, витрина или контентный сайт с товарами, это особенно заметно.
Ниже — рабочая схема: что именно закрывать, чем это делать и как проверить, что поисковик действительно перестал считать архивы товарами страницами для ранжирования.
Когда проблема уже есть: как понять, что архивы товаров индексируются лишний раз
Сначала стоит не трогать настройки вслепую, а посмотреть на симптомы. Обычно проблема проявляется так:
- в Google или Яндексе находятся страницы вида
/product-category/...,/product-tag/...,/product/page/2/; - в выдаче всплывают пустые или почти пустые архивы;
- в Search Console растёт число страниц, которые не несут самостоятельной ценности;
- одни и те же товары доступны через несколько путей: категория, тег, поиск, фильтр, пагинация.
Если архивы нужны пользователю для навигации, это не значит, что их обязательно надо индексировать. Навигация и индексация — разные задачи. Архив может оставаться доступным на сайте, но не участвовать в поиске.
Что именно обычно закрывают
Чаще всего речь идёт не о самих товарах, а о вспомогательных страницах:
- архивы товарных категорий;
- архивы тегов товаров;
- страницы пагинации архивов;
- страницы с параметрами сортировки и фильтрации;
- внутренний поиск по каталогу, если он создаёт индексируемые URL.
Точный набор зависит от структуры сайта. Если у вас небольшое число категорий с уникальными текстами и нормальной посадочной логикой, их можно оставить в индексе. Если же это технические страницы без контента, лучше закрывать.
Какие есть способы: плагин, код или настройка SEO-плагина
Здесь нет универсального ответа. Если нужен быстрый и безопасный путь, проще использовать SEO-плагин. Если задача точечная и вы контролируете тему или mu-plugin, можно сделать это кодом. Ниже — сравнение.
| Способ | Когда подходит | Плюс | Минус |
|---|---|---|---|
| SEO-плагин | Нужно быстро закрыть архивы без разработки | Меньше риска сломать сайт | Не всегда есть точечный контроль над WooCommerce-архивами |
| Код в теме или mu-plugin | Нужна точная логика по типам архивов | Полный контроль | Нужно аккуратно тестировать после обновлений |
| robots.txt | Нужно ограничить обход, а не индексацию | Просто внедрить | Не решает задачу полностью: URL может остаться в индексе |
Если цель именно убрать страницы из индекса, одного robots.txt обычно недостаточно. Поисковик может знать URL по ссылкам и продолжать держать его в базе без контента. Для удаления из индекса нужен noindex или эквивалентная настройка SEO-плагина.
Пошаговое решение через код: закрываем архивы от индексации
Если у вас есть доступ к теме или лучше — к отдельному mu-plugin, можно добавить логику для архивов товаров. Ниже пример для WordPress с WooCommerce: он ставит noindex, follow на архивы товаров, категорий и тегов товаров.
<?php
add_action( 'wp', function () {
if ( is_shop() || is_product_taxonomy() ) {
add_filter( 'wp_robots', function ( array $robots ) {
$robots['noindex'] = true;
$robots['follow'] = true;
return $robots;
} );
}
} );Этот вариант работает на уровне robots meta. Для поисковика это понятный сигнал: страницу не индексировать, но ссылки на ней можно обходить. Для архивов это обычно безопаснее, чем жёстко запрещать обход.
Если нужно закрыть только часть архивов, например теги товаров, а категории оставить, условие можно сузить:
<?php
add_action( 'wp', function () {
if ( is_product_tag() ) {
add_filter( 'wp_robots', function ( array $robots ) {
$robots['noindex'] = true;
$robots['follow'] = true;
return $robots;
} );
}
} );Почему лучше не править шаблоны вручную без проверки
Иногда пытаются вставить <meta name="robots" ...> прямо в header.php. Это работает только если вы точно контролируете все условия вывода и не конфликтуете с SEO-плагином. На практике это часто приводит к дублю мета-тегов или к тому, что плагин перезаписывает ваш код.
Фильтр wp_robots в WordPress 5.7+ — более чистый вариант. Он учитывает системную логику и обычно лучше переживает обновления.
Если используете SEO-плагин: где искать настройку
Во многих SEO-плагинах можно закрыть архивы от индексации без кода. Логика обычно одна и та же: для таксономии или типа архива ставится noindex, а иногда ещё отключается вывод в XML sitemap.
Проверяйте не только саму галочку, но и побочные эффекты:
- не исчезли ли нужные страницы из карты сайта;
- не закрылись ли важные категории вместе с мусорными тегами;
- не остались ли в индексе старые URL после изменения настроек.
Если у вас уже есть Clearfy Pro, можно использовать его для чистки дублей и технических страниц, но всё равно смотрите на конкретную конфигурацию сайта, а не включайте всё подряд. Для некоторых проектов это удобнее, чем собирать логику вручную.
Диагностика после внедрения: как проверить, что решение сработало
После изменения настроек не ограничивайтесь просмотром исходника страницы. Нужна проверка на трёх уровнях: HTML, ответ сервера и индексация.
- Откройте архив товара в браузере и посмотрите исходный код: должен быть
noindexв robots meta или соответствующий заголовок, если вы используете другой механизм. - Проверьте, не выводится ли второй robots meta от темы или плагина.
- В Search Console отправьте URL на проверку и посмотрите, как робот видит страницу.
- Через несколько дней проверьте, ушёл ли URL из отчётов по индексированию.
Для быстрой проверки можно использовать curl:
curl -I https://example.com/product-category/shoes/Если вы закрывали страницу через заголовок, в ответе должен быть виден соответствующий X-Robots-Tag. Если использовали только meta-тег, заголовок этого не покажет, тогда проверяйте HTML страницы.
Что считать нормальным результатом
Нормально, если:
- архивы остаются открытыми для пользователя;
- поисковик видит
noindex; - внутренние ссылки продолжают работать;
- товары и важные посадочные страницы не выпали из индекса.
Если после изменений исчезли из поиска и сами товары, значит вы закрыли не тот шаблон или переусердствовали с правилами.
Частые ошибки и как их исправить
1. Закрыли robots.txt вместо индексации
Это частая подмена понятий. Disallow в robots.txt ограничивает обход, но не гарантирует удаление из индекса. Если URL уже известен поисковику, он может остаться в выдаче без сниппета. Для удаления нужен noindex или явная настройка в SEO-плагине.
2. Поставили noindex на все архивы без разбора
Так можно случайно закрыть полезные категории, которые реально собирают трафик. Сначала разделите архивы на полезные и технические, потом применяйте правило.
3. Получили конфликт с SEO-плагином
Если плагин уже выводит свои robots-метки, а вы добавили ещё одну логику в тему, в HTML может появиться несколько meta robots. Поисковик обычно ориентируется на более жёсткое правило, но такой код трудно сопровождать. Оставьте один источник правды.
4. Закрыли архив, но оставили его в sitemap
Это не критическая ошибка, но лишний шум. Если страница не должна индексироваться, её лучше убрать и из карты сайта, чтобы не отправлять противоречивые сигналы.
Чек-лист перед публикацией изменений
- Определены только те архивы, которые действительно не нужны в индексе.
- Проверено, нет ли конфликта с SEO-плагином.
- Настройка применена через
wp_robotsили через SEO-плагин, а не через случайный хак в шаблоне. - Проверен исходный код страницы и наличие
noindex. - Проверено, не исчезли ли важные категории и товары из поиска.
- Сделана повторная проверка через Search Console или аналогичный инструмент.
Практика по безопасности и производительности
Если вы добавляете код, не кладите его в functions.php активной темы, если тема часто обновляется или меняется. Для технических правил лучше использовать mu-plugin: так логика не потеряется при смене темы.
Ещё один момент: не пытайтесь решать индексацию через тяжёлые плагины, если задача простая. Чем меньше лишнего кода в админке и на фронте, тем меньше шанс получить конфликт после обновления. Для сайтов с большим количеством дублей и технических страниц удобнее сначала навести порядок в структуре, а уже потом тонко настраивать индексацию.
Если у вас много служебных страниц, фильтров и архивов, имеет смысл отдельно проверить, не создаёт ли тема или плагин лишние URL через пагинацию, сортировку и параметры запроса. Иногда проблема не в индексации как таковой, а в том, что сайт генерирует слишком много однотипных страниц.
В итоге рабочая схема простая: сначала определить, какие архивы реально нужны в поиске, затем закрыть лишние через noindex или SEO-плагин, после этого проверить HTML, sitemap и отчёты в поисковых системах. Именно такая последовательность даёт предсказуемый результат и не ломает навигацию на сайте.