Если в поиске начали всплывать URL вида ?utm_source=..., страницы сортировки, фильтры каталога или другие адреса с параметрами, задача обычно не в том, чтобы «запретить всё подряд», а в том, чтобы убрать из индекса мусорные дубли и не сломать полезные страницы. В WordPress это решается не одним действием, а набором мер: где-то достаточно корректных canonical, где-то нужен noindex, а где-то лучше вообще не генерировать такие URL для поисковых роботов.
Сразу важный момент: если страница с параметром реально полезна пользователю и должна ранжироваться, не надо бездумно закрывать её от индексации. Например, сортировка или фильтр может быть частью важной посадочной страницы. Но если это технический дубль, рекламная метка или бесконечная комбинация параметров, её лучше убрать из индекса и, по возможности, из обхода.
Сначала определите, какие параметры нужно убирать
Не все параметры одинаковы. От этого зависит способ обработки.
utm_*,gclid,fbclidи похожие метки — обычно это служебные параметры для аналитики и рекламы. Они не должны создавать отдельные индексируемые страницы.- Параметры сортировки вроде
?sort=priceили?orderby=dateчасто создают дубли основной страницы. - Фильтры каталога и таксономий, например
?color=red&size=m, могут порождать тысячи комбинаций. - Пагинация с параметрами, например
?page=2или нестандартные варианты от плагинов, тоже иногда плодит дубли.
Если параметр меняет только способ отображения, но не смысл страницы, чаще всего его нужно исключать из индекса. Если параметр формирует отдельную полезную страницу, например узкую подборку товаров, решение уже зависит от SEO-логики сайта.
Самый надёжный вариант: не давать параметрическим URL становиться отдельными страницами
Лучший сценарий — когда WordPress и сервер отдают одну основную страницу, а параметры не создают отдельный индексируемый дубль. Для этого обычно используют три уровня контроля.
1. Канонический URL должен указывать на чистую страницу
Для большинства параметрических дублей правильный rel="canonical" — это основной URL без параметров. Поисковик видит, что содержимое относится к исходной странице, а не к отдельному документу.
В WordPress это часто уже делает SEO-плагин, но не всегда корректно для всех параметров. Проверьте исходный код страницы с параметром: в <head> должен быть canonical на чистый адрес, например https://site.ru/category/page/, а не на https://site.ru/category/page/?utm_source=....
Если canonical указывает на сам параметрический URL, поисковик может считать его отдельной страницей. Тогда нужно исправлять логику плагина или шаблона.
2. Для мусорных параметров используйте noindex, а не редирект везде подряд
Если параметр не нужен для SEO, но URL всё же открывается и должен работать для пользователя, можно поставить noindex,follow. Это говорит поисковику не включать страницу в индекс, но не запрещает переходить по ссылкам дальше.
Такой подход полезен для фильтров, сортировок и некоторых служебных параметров. Но не стоит массово ставить noindex на всё подряд: если страница уже получает трафик или должна быть посадочной, вы сами уберёте её из поиска.
В WordPress это обычно настраивается через SEO-плагин или кодом, если нужна точечная логика. Например, для отдельных шаблонов можно менять robots-мета в зависимости от параметров запроса. Но если у вас нет чёткой схемы, безопаснее использовать возможности SEO-плагина, а не писать собственную логику на PHP.
3. Там, где параметр не нужен вообще, лучше убрать его на уровне ссылок
Если на сайте внутренние ссылки уже размечены с параметрами, поисковик будет регулярно находить такие URL. В этом случае полезно исправить генерацию ссылок в теме, меню, блоках и плагинах.
Для UTM-меток это особенно важно: их не должно быть во внутренних ссылках сайта. UTM нужны для внешней аналитики, а не для навигации по сайту. Если они попадают во внутренние ссылки, это почти всегда ошибка настройки.
Что делать с UTM, gclid и похожими метками
Служебные метки чаще всего не требуют отдельной страницы в индексе. Здесь задача простая: поисковик должен понимать, что это тот же самый документ.
Практически это означает следующее:
- canonical должен вести на URL без параметров;
- страница не должна получать уникальный title и description только из-за UTM;
- внутренние ссылки не должны содержать рекламные метки;
- если метки создают много мусора в обходе, их стоит дополнительно ограничить через настройки SEO-плагина или robots.txt, но только если вы понимаете последствия.
С robots.txt здесь нужна осторожность. Запрет на обход параметрических URL не удаляет уже проиндексированные адреса мгновенно. Более того, если вы закроете URL в robots.txt, поисковик может перестать видеть canonical и другие сигналы на самой странице. Поэтому robots.txt — не первый инструмент для удаления дублей из индекса, а вспомогательный.
Как убрать из индекса сортировки и фильтры в каталоге WordPress
Это самая частая практическая ситуация: на сайте есть каталог, а фильтры создают десятки или тысячи URL с параметрами. Здесь нужно разделить страницы на две группы.
Первая группа — технические комбинации, которые не нужны в поиске. Их обычно закрывают через noindex и canonical на основную категорию или на ближайшую логичную посадочную страницу.
Вторая группа — полезные фильтры, которые могут стать отдельными посадочными страницами. Например, если у вас есть стабильный спрос на «красные кроссовки» или «ноутбуки 16 ГБ», такие страницы иногда имеет смысл делать отдельными ЧПУ-адресами, а не параметрами. Тогда это уже не дубль, а полноценная SEO-страница.
Если оставить фильтры на параметрах без контроля, поисковик быстро начнёт индексировать бесполезные комбинации. В результате в индексе окажутся страницы с почти одинаковым содержимым, а основной URL может просесть из-за размывания сигналов.
На практике для фильтров обычно делают так:
- Определяют, какие параметры не должны индексироваться.
- Для них ставят
noindex,followили canonical на основную страницу. - Проверяют, не создаёт ли плагин фильтрации отдельные заголовки и мета-теги для каждого сочетания.
- Если фильтр важен для SEO, переводят его в отдельную посадочную страницу с чистым URL.
Когда нужен редирект, а когда он только навредит
Редирект — не универсальное решение. Он полезен, если параметрический URL вообще не должен существовать как отдельный адрес и у него нет самостоятельной ценности. Например, если кто-то открыл старую техническую ссылку с параметром, а вы хотите отправить его на чистую страницу.
Но массово редиректить все URL с параметрами опасно. Если на странице есть пагинация, сортировка или фильтр, редирект может сломать пользовательский сценарий и аналитику. Кроме того, поисковик может потерять сигнал о том, что параметрическая версия относится к основной странице, если вы просто отправляете всё на главную или на случайный URL.
Редирект уместен в таких случаях:
- параметр больше не используется и не нужен;
- URL с параметром создан ошибочно;
- страница с параметром дублирует основной адрес без пользы для пользователя;
- нужно убрать устаревшие ссылки после смены структуры сайта.
Если же параметр нужен для работы интерфейса, но не для индекса, чаще выбирают canonical и noindex, а не редирект.
Как проверить, что страницы с параметрами действительно ушли из индекса
После настройки не стоит полагаться только на визуальную проверку. Нужно посмотреть, как страницу видит поисковик.
Проверьте три вещи:
- в исходном коде страницы с параметром есть canonical на чистый URL;
- в мета-теге robots стоит
noindex, если вы его применяли; - страница не создаёт отдельный уникальный title и description, если это технический дубль.
Дальше откройте Google Search Console и проверьте отчёты по индексированию и проверку URL. Если параметрический адрес ещё в индексе, это не всегда означает ошибку настройки: поисковику нужно время, чтобы переобойти страницу и учесть новые сигналы. Иногда процесс занимает недели, особенно если URL уже давно в индексе и на него есть внешние ссылки.
Если страница упорно остаётся в индексе, смотрите на причину:
- canonical указывает на себя, а не на чистый адрес;
- страница доступна по внутренним ссылкам;
- параметрический URL получает внешние ссылки;
- на странице нет
noindex, а контент слишком похож на основную страницу.
Что обычно ломает удаление параметров из индекса
На практике проблемы повторяются одни и те же.
- Путают закрытие от индексации и закрытие от обхода. Если просто запретить URL в robots.txt, это не гарантирует удаление из индекса.
- Ставят
noindexна все страницы с параметрами без разбора. В результате можно потерять полезные посадочные страницы. - Оставляют внутренние ссылки с UTM. Поисковик продолжает находить мусорные адреса снова и снова.
- Не проверяют canonical после установки SEO-плагина. Плагин может работать корректно для обычных страниц и ошибаться на нестандартных шаблонах.
- Ожидают мгновенного исчезновения из индекса. Даже правильная настройка не удаляет URL моментально.
Если вам нужен именно практический контроль над дублями и техническими URL в WordPress, удобнее всего решать это на уровне SEO-настроек, canonical и точечной логики для параметров. В ряде случаев помогает плагин Clearfy Pro от WPShop, если задача стоит в чистке дублей и управлении техническими сигналами сайта: https://wpshop.ru/plugins/clearfy.
Если коротко, рабочая схема такая: сначала отделите полезные параметры от мусорных, затем для дублей задайте canonical на чистый URL, при необходимости добавьте noindex,follow, а потом проверьте результат в исходном коде и в Search Console. Именно такой порядок даёт предсказуемый результат без лишнего риска для сайта.