Завдання звучить просто: «поміняй картку товару». Насправді картка — це шаблон компонента bitrix:catalog.element. Він лежить у /bitrix/components/bitrix/catalog.element/templates/.default/. Торкати його не можна — зміни зникнуть при оновленні. Потрібно створювати перевизначення: у /local/templates/<шаблон_сайту>/components/ або в папці шаблону сайту. Ми спеціалізуємося на кастомній верстці шаблонів компонентів 1С-Бітрікс. У нас за плечима понад 80 проектів та 7 років роботи з платформою. Працюємо під ключ: від аналізу до готового шаблону. Оцінимо ваш проект за 1 день і запропонуємо оптимальне рішення. Кастомний шаблон працює в 2–3 рази швидше за стандартний при реалізації складних UI-елементів, таких як вкладки або фільтри з AJAX-підвантаженням. Бюджет проекту скорочується на 30-50% порівняно з розробкою власного компонента.
Порядок перевизначення шаблону компонента
Бітрікс шукає шаблон компонента в наступному порядку (спрощено):
-
/local/templates/<шаблон_сайту>/components/<namespace>/<компонент>/<ім'я_шаблону>/ -
/bitrix/templates/<шаблон_сайту>/components/<namespace>/<компонент>/<ім'я_шаблону>/ -
/local/components/<namespace>/<компонент>/templates/<ім'я_шаблону>/ -
/bitrix/components/<namespace>/<компонент>/templates/<ім'я_шаблону>/
Правильне місце для кастомних шаблонів — /local/templates/<шаблон>/components/ або /local/components/. Це гарантує збереження при оновленні ядра. Докладніше про правила перевизначення читайте в офіційній документації.
Мінімальний склад папки шаблону: template.php (обов'язково), style.css та script.js (підключаються автоматично).
Які компоненти найчастіше потребують кастомної верстки?
-
bitrix:news.list/bitrix:news.detail— новини, блог, портфоліо. У$arResult['ITEMS']— масив елементів з полями та властивостями інфоблоку. -
bitrix:catalog.element/bitrix:catalog.section— картка товару та сторінка розділу каталогу.$arResult['ELEMENT']містить дані товару,$arResult['OFFERS']— торгові пропозиції. -
bitrix:form.result.new— веб-форма. Шаблон містить HTML форми з полями з$arResult['FIELDS']. -
bitrix:main.include— підключення статичних областей.
З нашої практики: шаблон картки товару з вкладками
Інтернет-магазин медтехніки. Стандартний шаблон bitrix:catalog.element виводив опис, характеристики та документи єдиним текстовим блоком. Завдання: розбити на вкладки — «Опис», «Характеристики», «Документи» (PDF-файли з властивості інфоблоку типу «Файл»).
Створили перевизначення в /local/templates/main/components/bitrix/catalog.element/detail/template.php. У шаблоні: вкладки на чистому CSS (:target-селектори без JS-залежності), характеристики — з $arResult['ELEMENT']['DISPLAY_PROPERTIES'], документи — з властивості з перевіркою на непорожнє значення. Кешування компонента не чіпали — шаблон працює з уже підготовленим $arResult.
Що доступно всередині template.php
У template.php автоматично доступні:
-
$arResult— дані, підготовлені компонентом (структура залежить від конкретного компонента) -
$arParams— параметри, передані при виклику -
$APPLICATION,$USER,$DB— глобальні об'єкти Бітрікс -
$this— об'єкт компонента (CBitrixComponent), через який доступні методи типу$this->GetPath()
Перед версткою обов'язково вивчаємо структуру $arResult — через документацію або var_dump() на етапі розробки. Типовий приклад: щоб вивести властивість "Колір", потрібно отримати $arResult['DISPLAY_PROPERTIES']['COLOR']['VALUE']. Використовуємо ORM Бітрікс D7 для вибірки даних, якщо компонент не надає потрібні поля.
Як кастомна верстка прискорює розробку?
Ми не просто верстаємо шаблон — аналізуємо бізнес-логіку та пропонуємо оптимальну структуру. У роботі використовуємо:
- PHP 8.1+, інфоблоки v2.0, ORM
- Теговане кешування для зниження навантаження на сервер до 70%
- Інтеграцію з 1С, платіжними системами, СДЕК за необхідності
Порівняно з розробкою власного компонента, кастомізація шаблону дозволяє заощадити до 50% трудозатрат. Перевизначення в /local/ гарантує збереження змін при оновленні ядра.
Чому перевизначення в /local/ — це безпечно?
Зміни в /bitrix/ перезаписуються при оновленні платформи. Папка /local/ не зачіпається оновленнями, всі кастомні шаблони залишаються недоторканими. Крім того, при переїзді на інший сервер достатньо перенести папку /local/ — всі налаштування та шаблони зберігаються. Це стандарт для професійної розробки на Бітрікс.
Типові помилки при перевизначенні шаблонів
- Редагування шаблону в
/bitrix/— зміни зникають після оновлення. - Забувають вимкнути кеш компонента при налагодженні — результат не оновлюється.
- Плутають
$arResult['ITEMS']та$arResult['ELEMENTS']— структура залежить від компонента. - Не перевіряють наявність шаблону для мобільної версії — адаптивність часто упускають.
Що входить у роботу
| Етап | Опис |
|---|---|
| Аналіз | Вивчення поточного шаблону, вимог, структури $arResult |
| Проектування | Розробка макету та логіки шаблону (включаючи адаптивність) |
| Верстка | Створення template.php, style.css, script.js у /local/ |
| Інтеграція | Прив'язка до даних з $arResult, $arParams |
| Тестування | Перевірка на різних сторінках, браузерах, скидання кешу |
| Документація | Опис структури шаблону та рекомендації щодо доопрацювання |
Терміни орієнтовно
| Тип задачі | Терміни |
|---|---|
| Верстка шаблону одного простого компонента | 4–8 годин |
| Шаблон зі складною логікою (вкладки, фільтрація, AJAX) | 1–3 дні |
| Комплекс шаблонів (5–10 компонентів) | 1–2 тижні |
Зв'яжіться з нами для оцінки вашого проекту — безкоштовно проаналізуємо поточні шаблони та запропонуємо варіанти кастомізації. Замовте кастомну верстку шаблону під ключ — отримайте готове рішення з гарантією сумісності.
Докладніше про платформу 1С-Бітрікс читайте на Wikipedia.







