Хлібні крихти в 1С-Бітрікс: налаштування та мікророзмітка
Типова ситуація: після перенесення сайту на Бітрікс з іншої CMS хлібні крихти перестали відображатися — компонент є, а ланцюжок порожній. Або показують шлях «Головна → Каталог → Товар», хоча потрібно «Головна → Каталог → Підкатегорія → Товар». Ми стикалися з такими кейсами десятки разів за 10+ років розробки. Розберемо, як працює механізм на рівні ядра і як ми налаштовуємо крихти під ключ — з гарантією, що вони будуть коректно працювати на всіх сторінках, включаючи розділи каталогу та товари.
Чому хлібні крихти важливі для SEO?
Хлібні крихти — не просто елемент навігації. Пошуковики використовують їх для розуміння структури сайту і показують у видачі у вигляді rich-сніпетів. За нашими даними, після впровадження Schema.org BreadcrumbList CTR органічного трафіку зростає в середньому на 20–30%. Крім того, правильні крихти знижують глибину перегляду і зменшують відсоток відмов. Для інтернет-магазинів з каталогом понад 1000 товарів коректна мікророзмітка дає приріст переходів із пошуку на 15–25%.
Проблеми, які вирішуємо
Невірний порядок розділів. Коли товар прив'язаний до кількох розділів, Бітрікс використовує IBLOCK_SECTION_ID — основний розділ. Якщо він не збігається з потрібним шляхом, крихти ламаються. Рішення — переприв'язка або кастомне формування ланцюжка через AddChainItem.
Технічні заголовки замість назв. У файлах .section.php часто відсутній виклик SetTitle() або AddChainItem(). Тоді в крихту потрапляє ім'я файлу. Перевіряємо всі папки від кореня до поточної. У 90% випадків проблема вирішується за 2 години.
Відсутність мікророзмітки Schema.org. Навіть ідеально побудовані крихти без розмітки не дають переваг у видачі. Пошуковики люблять структуровані дані, і ми додаємо BreadcrumbList у кожен проєкт — це збільшує CTR до 30%.
Як Бітрікс формує хлібні крихти
Бітрікс автоматично будує ланцюжок навігації на основі структури папок сайту. Кожна папка має файл .section.php, в якому задається назва розділу для крихт.
Приклад /catalog/.section.php:
<? $APPLICATION->SetTitle('Каталог'); $APPLICATION->AddChainItem('Каталог', '/catalog/'); ?> Компонент bitrix:breadcrumb виводить зібраний ланцюжок:
$APPLICATION->IncludeComponent('bitrix:breadcrumb', '', [ 'START_FROM' => 0, // з якого рівня починати (0 = від головної) 'PATH' => '', // пусто = поточний шлях 'SHOW_ROOT' => 'Y', // чи показувати «Головна» ]); Як програмно додати елемент у ланцюжок?
У будь-якому PHP-коді або шаблоні компонента використовуйте методи об'єкта $APPLICATION:
$APPLICATION->AddChainItem('Назва пункту', '/path/to/page/'); $APPLICATION->SetTitle('Заголовок сторінки'); // заголовок = остання крихта Ланцюжок зберігається в об'єкті $APPLICATION і скидається при кожному запиті.
Розбір кейсу з нашої практики: виправлення ланцюжка товару
Нещодавно клієнт прийшов зі скаргою — на сторінці товару крихти показували «Головна → Каталог» замість «Головна → Каталог → Підкатегорія». Виявилося, що у товару було неправильно призначено IBLOCK_SECTION_ID. Ми виправили прив'язку до правильного розділу і додатково кастомізували шаблон — додали роздільник «→» замість стандартного «/». Час робіт — 3 години. Результат: користувачі стали рідше йти з картки товару, навігація стала інтуїтивною.
Порівняння методів: автоматичний vs програмний
Автоматичний метод через .section.php і bitrix:breadcrumb найшвидший — не потребує програмування, але жорстко прив'язаний до файлової структури. Програмний через AddChainItem дає повну гнучкість: можна задати будь-який шлях, навіть не співпадаючий з реальною структурою папок. Компонент каталогу з ADD_SECTIONS_CHAIN автоматично підтягує розділи з інфоблоку, але працює лише для елементів інфоблоку. Ми зазвичай комбінуємо: для каталогу використовуємо ADD_SECTIONS_CHAIN, для статичних сторінок — bitrix:breadcrumb з доналаштуванням .section.php. Такий підхід у 2 рази скорочує час на підтримку при додаванні нових розділів порівняно з чисто автоматичним методом.
Типові помилки при налаштуванні
На практиці найчастіше плутають ADD_SECTIONS_CHAIN з включенням самого компонента bitrix:breadcrumb. Перший додає розділи з інфоблоку, другий — будує шлях за файловою структурою. Якщо обидва увімкнено, ланцюжок може подвоїтися. Ми завжди перевіряємо, що START_FROM відповідає кількості рівнів. Ще одна часта проблема — відсутність файлу .section.php в кореневому каталозі, через що «Головна» не відображається. Рішення — додати SetTitle('Головна') у кореневий .section.php.
Що входить в роботу
| Етап | Що робимо | Результат |
|---|---|---|
| Аналіз | Перевіряємо файли .section.php, компоненти, налаштування інфоблоків | План доопрацювань |
| Проектування | Узгоджуємо логіку ланцюжків | Маршрутна карта навігації |
| Розробка | Правимо .section.php, додаємо AddChainItem, налаштовуємо компонент | Працюючі крихти на всіх сторінках |
| Мікророзмітка | Впроваджуємо Schema.org BreadcrumbList (JSON-LD) | Rich-сніпети у видачі |
| Тестування | Перевіряємо на десктопі та мобільних | Гарантія коректного відображення |
Типові обсяги робіт
| Задача | Тривалість |
|---|---|
| Базове налаштування | 2–4 години |
| Кастомізація шаблону з мікророзміткою | 4–8 годин |
| Інтеграція з каталогом | 2–4 години |
Точна вартість розраховується індивідуально після аналізу вашого проєкту. Економія на доопрацюваннях навігації — до 40% часу розробки при комплексному замовленні.
Зв'яжіться з нами для консультації — оцінимо ваш проєкт безкоштовно. Замовте налаштування хлібних крихт у професіоналів — пишіть, і ми знайдемо оптимальне рішення для навігації вашого сайту.







