Настройка ЧПУ-адресов для фильтров 1С-Битрикс
Настройка ЧПУ-адресов для фильтров каталога
Стандартный умный фильтр Битрикс генерирует URL вида /catalog/section/?arrFilter_pf_COLOR=red&arrFilter_pf_SIZE=XL — поисковик видит тысячи параметрических страниц с дублирующимся контентом и не знает, какую индексировать. Итог: каннибализация ключей, просадка трафика по фасетным запросам, бесконечный краулинговый бюджет на мусорные URL.
ЧПУ для фильтров решает эту задачу: каждая комбинация параметров получает читаемый адрес /catalog/obuv/krossovki/cvet-krasnyj/razmer-42/, который можно прописать в sitemap, снабдить мета-тегами и вести на него ссылочную массу.
Как работает механизм ЧПУ в умном фильтре
Битрикс хранит настройки ЧПУ в таблице b_iblock_section_url и в свойствах компонента bitrix:catalog.smart.filter. Для каждого значения свойства задаётся символьный код (CODE), который подставляется в URL-шаблон.
Шаблон прописывается в параметре SEF_URL_TEMPLATES компонента-обёртки каталога:
'FILTER_URL' => 'catalog/#SECTION_CODE_PATH#/#FILTERS#/',
Переменная #FILTERS# собирается из пар код-свойства-значение через разделитель, который задаётся в настройках компонента (обычно /).
Движок маршрутизации разбирает входящий URL, восстанавливает массив фильтра и передаёт его в компонент. Если символьный код свойства или значения содержит кириллицу или спецсимволы — маршрут сломается. Поэтому перед настройкой нужно привести все CODE к latin+digits+hyphen.
Что делаем в рамках услуги
Аудит текущих URL-параметров. Выгружаем все свойства инфоблока, проверяем коды значений. Находим коллизии: одинаковые коды у разных свойств, пустые коды, кириллицу.
Исправление символьных кодов. Меняем коды значений через административный интерфейс или напрямую в b_iblock_property_enum с резервным обновлением. Для высоконагруженных каталогов (50 000+ SKU) — пакетный SQL-скрипт с транзакцией.
Настройка шаблонов ЧПУ. Прописываем SEF_URL_TEMPLATES под конкретную структуру каталога: одноуровневый, многоуровневый, с брендами в URL. Учитываем совместимость с постраничной навигацией.
301-редиректы со старых URL. Если сайт уже проиндексирован по GET-параметрам — настраиваем редиректы через .htaccess или nginx map, чтобы не потерять накопленный вес страниц.
Проверка canonical и robots. Для комбинаций, которые не должны индексироваться (более двух фильтров, нулевая выдача), настраиваем canonical на корневую категорию и noindex через компонент мета-тегов.
Генерация и добавление в sitemap. Собираем список приоритетных ЧПУ-комбинаций (по данным Wordstat или Search Console), добавляем их в XML-карту сайта через модуль SEO Битрикс или кастомный агент.
Типовые проблемы и решения
Конфликт с постраничной навигацией. Страница 2 в ЧПУ-фильтре получает URL /catalog/krossovki/cvet-krasnyj/page-2/. Если шаблон не учитывает PAGEN_1, компонент сбрасывает фильтр на второй странице. Решение: добавить #PAGE# в шаблон и обработать в template.php.
Дубли при разном порядке параметров. /cvet-krasnyj/razmer-42/ и /razmer-42/cvet-krasnyj/ — разные URL, один контент. Битрикс не сортирует параметры по умолчанию. Добавляем сортировку в result_modifier.php умного фильтра и ставим canonical на каноническую последовательность.
Слишком длинные URL. При 5+ параметрах URL превышает 200 символов. Поисковики индексируют такие страницы хуже. Ограничиваем ЧПУ двумя-тремя параметрами, остальные отдаём через GET с noindex.
Результат
После настройки ЧПУ-адресов фасетные страницы становятся полноценными SEO-единицами: уникальный URL, управляемые мета-теги, корректный canonical, присутствие в sitemap. Типичный прирост трафика по низкочастотным фасетным запросам — от 20 до 60% в течение трёх месяцев после переиндексации.







