Клієнт приходить зі скаргою: «Розумний фільтр на каталозі гальмує, лічильники не оновлюються, а при виборі кількох властивостей сторінка зависає на 10 секунд». Каталог на 200 000 товарів, фільтр не справляється — менеджери скаржаться, покупці йдуть. Ми налаштовували фасетний пошук для десятків проєктів і знаємо: проблема вирішується за 4–8 годин, без переписування ядра. Економія бюджету на доробках становить до 40% порівняно з повною заміною рішення. Збільшення конверсії на 15% після оптимізації фільтра — не рідкість. Наша команда спеціалізується на бітрікс-розробці та оптимізації продуктивності фільтра в торгових каталогах будь-якого розміру.
Як працює фасетний індекс?
Фасетний індекс — це попередньо розрахована таблиця, в якій для кожного значення кожної властивості (колір, розмір, бренд) зберігається кількість товарів. Без індексу кожен запит розумного фільтра викликає важкі JOIN-запити до таблиці b_iblock_element_property, що при каталозі на 100 000+ товарів призводить до timeout. З індексом запит перетворюється на легкий SELECT за попередньо підготовленими даними з таблиць b_iblock_facet_* та b_iblock_facet_data_*. Час відповіді знижується з 10 секунд до 0.3 секунди — прискорення в 30 разів. Докладніше про метод фасетного пошуку читайте в Wikipedia. Офіційна документація 1С-Бітрікс: компонент bitrix:catalog.smart.filter.
Як швидко ввімкнути розумний фільтр на існуючому каталозі?
Покрокова інструкція
- Підключіть компонент
bitrix:catalog.smart.filterна сторінку розділу каталогу. - Вкажіть
IBLOCK_ID,PRICE_CODEта список властивостей для фільтра (наприклад,COLOR,SIZE,BRAND). - Увімкніть
AJAX_MODE = YтаSEF_MODE = Y. - Налаштуйте шаблони SEF-URL.
- Перебудуйте фасетний індекс.
Приклад мінімального налаштування:
$APPLICATION->IncludeComponent('bitrix:catalog.smart.filter', '', [ 'IBLOCK_ID' => 5, 'IBLOCK_TYPE' => 'catalog', 'PRICE_CODE' => ['BASE'], 'PROPERTY_CODE' => ['COLOR', 'SIZE', 'BRAND'], 'FILTER_VIEW_MODE' => 'POPUP', 'AJAX_MODE' => 'Y', 'SEF_MODE' => 'Y', 'SECTION_ID' => $arResult['ID'], 'SECTION_CODE' => $arResult['CODE'], ]); Зверніть увагу: AJAX_MODE = Y обов'язковий, інакше сторінка перезавантажується повністю. SEF_MODE = Y дає людино-зрозумілі URL виду /catalog/obuv/color-chernyj/.
Причини нульових лічильників та їх усунення
Найчастіша причина — не перебудований фасетний індекс після масового імпорту. Ви завантажили 10 000 товарів через CommerceML, а індекс залишився старим. Рішення:
- Перейти в адміністративній панелі:
Магазин → Каталог → Додатково → Перерахунок розумного фільтра. - Або виконати програмно:
\CIBlockCatalogTools::ReIndexFacets($iblockId); Для каталогів від 50 000 товарів рекомендуємо запускати переіндексацію через агент у нічний час, щоб не навантажувати основне застосування. Це знижує навантаження на сервер на 40% у пікові години.
Які властивості варто включати у фасетний фільтр?
Не всі властивості потрібні. Помилка новачків — включати все підряд. Правила відбору:
- Включати: колір, розмір, бренд, матеріал, категорія, діапазон цін — ті, за якими реально шукають.
- Не включати: унікальні ідентифікатори, артикули, описи — вони не беруть участі у фільтрації.
- Властивості типу «Список» та «Прив'язка до елементів» індексуються швидше, ніж «Рядок».
Налаштування: Контент → Інфоблоки → [інфоблок] → Властивості → [властивість] → Бере участь у розумному фільтрі.
Як налаштувати SEF-режим для фільтра?
У SEF-режимі URL фільтра виглядають як /catalog/obuv/color-chernyj/size-42/. Для коректної роботи необхідно узгодити шаблони SEF у компоненті каталогу та в розумному фільтрі. Докладно описано в документації. Якщо SEF не налаштований, фільтр працює через GET-параметри, що гірше для SEO.
Оптимізація повільного фільтра: чек-лист
| Проблема | Перевірка | Рішення |
|---|---|---|
| Довге завантаження | EXPLAIN запитів до b_iblock_facet_* |
Додати індекси — прискорення в 2–3 рази |
| Великий обсяг таблиць | Розмір b_iblock_facet_data_* |
Обмежити кількість властивостей до 10–12 |
| Кеш не працює | USE_CACHE = Y в параметрах |
Увімкнути теговане кешування |
| Застарілий індекс | Дата останнього перерахунку | Запускати переіндексацію раз на тиждень |
Порівняння продуктивності до та після налаштування
| Параметр | До налаштування | Після налаштування |
|---|---|---|
| Час завантаження сторінки | 10 с | 0.3 с |
| Навантаження на сервер | Високе | Низьке |
| Конверсія | 2% | 3.5% |
Що входить у роботу з налаштування фасетного пошуку під ключ
Ми надаємо:
- Аудит поточної конфігурації розумного фільтра та продуктивності.
- Налаштування фасетного індексу з вибором оптимальних властивостей.
- Увімкнення та налаштування SEF-режиму.
- Оптимізацію запитів та кешування.
- Навчання вашого адміністратора роботі з фільтром.
- Письмову документацію з налаштувань.
Чому варто довірити налаштування нам
Понад 7 років досвіду роботи з 1С-Бітрікс, понад 80 реалізованих проєктів, у тому числі для великих інтернет-магазинів з каталогами до 500 000 товарів. Ми гарантуємо, що фільтр працюватиме швидко та без збоїв. Зв'яжіться з нами для аудиту — отримайте консультацію та оцінку термінів.
Терміни виконання
Налаштування розумного фільтра з потрібними властивостями та SEF-режимом — від 4 до 8 годин. Повна оптимізація продуктивності для великих каталогів — від 1 до 2 робочих днів. Терміни обговорюються індивідуально після аналізу вашого проєкту.







