Компонент bitrix:catalog.smart.filter голосует «против» композитной технологии 1С-Битрикс, поэтому несмотря на то, что страницы умного фильтра имеют постоянные URL, композит не работает на этих страницах.
При одновременном использовании модуля SEO умного фильтра (создание страниц на основе умного фильтра) и композитной технологии может перестать работать 301 редирект со старого URL на новый.
Почему bitrix:catalog.smart.filter голосует «против» композита? А может это неспроста?
При чем тут SEO-специалисты?
Включаем композит и исправляем ошибки.
Почему bitrix:catalog.smart.filter голосует «против» композита? А может это неспроста?
Вероятнее всего, идея отключения композита в фильтре сводится к тому, чтобы не создавать гигантское количество кешированных страниц. Только одно свойство с 5 значениями породит 31 страницу.
Что уж говорить о фильтре по цене. Но в 1С-Битрикс решение уже предусмотрено:
Для исключения ситуации, когда дисковая квота будет переполнена, а часто используемые страницы не будут иметь своего кеша, реализована автоматическая очистка старого кеша при достижении файлового лимита через LRU-алгоритм (Least recently used (LRU) - в первую очередь, вытесняются файлы кеша страниц неиспользованные дольше всех.). То есть разработчик может задать квоту согласно возможностям используемого тарифа хостинга и будет уверен, что кеш будет потрачен на самые посещаемые страницы. Источник: https://dev.1c-bitrix.ru/learning/course/index.php?COURSE_ID=39&LESSON_ID=3258
Поэтому не стоит переживать за переполнение хранилища: 1С-Битрикс оставит наиболее востребованные страницы. Кроме того, вы можете снизить количество кешируемых страниц, добавив часть фильтров, например, по цене, в исключение с помощью свойства «Маска исключения» в настройках композитного сайта.
При чем тут SEO-специалисты
Любой SEO-специалист скажет вам: страница (раздел) «Ноутбуки» в каталоге товаров — это хорошо, но мне нужны ещё страницы «Ноутбуки с диагональю 15,6 дюймов», «Игровые ноутбуки», «Игровые ноутбуки с диагональю 15,6 дюймов», «Игровые ноутбуки с диагональю 15,6 дюймов до 100 тысяч рублей» и так далее.
Тот же SEO-специалист добавит: нам нужен SEO умного фильтра для создания посадочных страниц (разделов) в каталоге товаров. И это действительно во всех отношениях удобное и рабочее решение.
Но модули SEO умного фильтра и композитная технология конфликтуют. При создании посадочной страницы:
SEO-модуль реализует логику перенаправлений на стороне PHP — как правило, в событиях OnPageStart или OnProlog.
Композит игнорирует выполнение OnPageStart или OnProlog событий и весь обработчик SEO-модуля, отдавая готовую кешированную версию страницы умного фильтра. В результате редирект просто не происходит, так как логика, отвечающая за него, даже не исполняется.
На практике частым решением такой проблемы является банальное отключение композитной технологии, поскольку создание посадочных страниц в каталоге с помощью SEO-модуля является критически важной задачей. В итоге снижается скорость загрузки контента и увеличивается нагрузка на сервер.
Включаем композит и исправляем ошибки
Как и написано в начале статьи, мы разработали решение:
Включает композитную технологию для страниц умного фильтра.
Устраняет ошибку переадресации (отсутствие 301 редиректа) для модулей SEO умного фильтра при включенном композите.
Композитная технология включается сразу же после установки модуля и не требует дополнительной работы по настройке. При необходимости модуль можно деактивировать как на всех сайтах разом, так и по отдельности на каждом сайте.
Проверить факт кеширования страниц умного фильтра можно в административной панели в разделе «Композитные страницы»: /bitrix/admin/composite_pages.php?lang=ru