Статті ·

Фільтри й пагінація: що закривати від індексації, а що ні

Параметричні URL з'їдають краулінг-бюджет великих каталогів. Розбираємо, які фільтри варто лишити в індексі, які закрити і чому rel=next більше не працює.

Каталог на три тисячі товарів із десятком фільтрів дає десятки тисяч URL. Кожна комбінація — окрема адреса, і бот ходить по них усіх, поки не витратить те, що виділив на ваш сайт.

Питання не в тому, закривати фільтри чи ні. Питання в тому, які саме.

Скільки бюджету на це йде насправді?

На типовому магазині — від 20 до 50% запитів бота. Це не оцінка, це видно в логах: беріть access.log, групуйте запити Googlebot за типом URL і дивіться частку параметричних.

Як це зробити — окрема стаття. Без цієї цифри решта тексту буде абстракцією: у вашому каталозі частка може бути 5%, і тоді проблеми немає взагалі.

Які фільтри варто лишити в індексі?

Правило одне: ті, які люди шукають окремим запитом.

  • Бренд у категорії — «дрилі Bosch» шукають, і така сторінка має право на власне життя;
  • Ключова характеристика — «акумуляторні дрилі», «зимові шини 205/55»;
  • Призначення — «дрилі для бетону».

Таким сторінкам потрібен власний title, опис і бажано читабельний URL — /catalog/dryli/bosch/ замість /catalog/dryli/?brand=bosch. Тоді це вже не фільтр, а повноцінна посадкова.

Що закривати без вагань?

  • сортування — ?sort=price, ?order=desc;
  • вигляд списку — ?view=grid;
  • комбінації двох і більше фільтрів;
  • діапазони цін — ?price=500-1000;
  • усе, що не має пошукового попиту.

Чим закривати: robots чи canonical?

Це різні інструменти для різних задач, і плутати їх дорого.

  1. robots.txt — коли треба зекономити краулінг-бюджет. Бот не витрачає на ці URL запити взагалі.
  2. canonical — коли сторінка потрібна людям і має отримувати сигнали, але в індексі має бути одна.
  3. noindex — коли сторінка вже в індексі й треба її звідти прибрати.

Помилка, що трапляється постійно: закрити сторінку в robots і поставити на ній noindex. Бот не зайде й не побачить noindex — сторінка лишиться в індексі назавжди. Детальніше про цю пастку.

User-agent: *
Disallow: /*?sort=
Disallow: /*?order=
Disallow: /*?view=
Disallow: /*?price=

Що робити з пагінацією?

Google офіційно припинив підтримку rel=next і rel=prev ще у 2019 році, хоч поради ставити їх досі гуляють інтернетом. Зараз робочих варіантів два:

  • лишити сторінки пагінації відкритими з canonical на самих себе — тоді товари з глибоких сторінок знаходяться;
  • закрити від сканування, якщо кожен товар і так доступний із категорії або sitemap.

Чого точно не варто робити — ставити canonical з другої сторінки на першу. Google тоді просто не бачить товарів із другої й далі.

Як перевірити, чи подіяло?

  1. Внесіть зміни в robots.txt.
  2. Через два-три тижні візьміть новий лог і подивіться розподіл ще раз. Частка параметричних URL має впасти, а частка товарів і категорій — вирости.
  3. Паралельно дивіться в Search Console, чи не почали зникати сторінки, які мали лишитись.

Два-три тижні — не перестраховка: бот повертається на закриті URL за інерцією ще кілька днів, і одразу після зміни картина виглядає незміненою.