Страницы с параметрами фильтра, сортировки и поиска часто создают в WordPress лишние URL: один и тот же контент доступен с разными query string, а поисковик начинает тратить crawl budget на мусорные комбинации. На небольшом сайте это выглядит как «ничего страшного», но на каталоге, блоге с фильтрами или сайте с поиском по тегам проблема быстро превращается в дубли, размывание релевантности и лишнюю нагрузку на индексацию.
Задача здесь не в том, чтобы «запретить всё подряд», а в том, чтобы аккуратно закрыть от индексации технические страницы, сохранив полезные посадочные и нормальную работу сайта для пользователей.
Когда проблема действительно есть
Сначала проверьте, что у вас именно технические дубли, а не полезные страницы, которые случайно выглядят как фильтр. Типичные признаки:
- в поиске находятся URL с параметрами вроде
?sort=,?filter=,?s=,?orderby=; - одинаковые заголовки и сниппеты у нескольких адресов;
- в Search Console растёт число «Просканировано, но не проиндексировано» или «Дубликат, Google выбрал другой канонический URL»;
- серверные логи показывают частые заходы ботов на комбинации фильтров, которые не несут ценности;
- страницы поиска по сайту попадают в индекс и конкурируют с обычными страницами.
Что именно нужно закрывать
Обычно речь идёт о таких сценариях:
- внутренний поиск
?s=; - сортировка
?orderby=,?order=; - фильтры по таксономиям и меткам через GET-параметры;
- страницы пагинации фильтров, если они не являются самостоятельными посадочными;
- служебные URL, которые генерирует тема или плагин.
Если у фильтра есть отдельная SEO-ценность и он должен ранжироваться, его нельзя просто закрыть массово. Для таких страниц лучше делать отдельную посадочную с нормальным ЧПУ, мета-тегами и каноникалами.
Диагностика: как понять, что индексируется лишнее
Начните с простого списка URL. Откройте Search Console, отчёт по страницам, и выгрузите примеры адресов с параметрами. Затем проверьте, как они ведут себя в браузере и что отдаёт сервер:
curl -I