Задача звучит просто: «поменяй карточку товара». На деле карточка — это шаблон компонента 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.







