30.03.2021 Айдар Фархутдинов 16705
Шаблон компонентов в Битрикс

Содержание:

1.       Подробнее о шаблоне компонентов

2.       Переменные для шаблона компонента

3.       Шаблон для простого компонента Битрикс

4.       Шаблон для комплексного компонента

5.       Как подключить шаблон компонентов       

6.       Редакция шаблона компонента


1.    Подробнее о шаблоне компонентов


В данной статье будут рассмотрены различные вариации и примеры установки шаблона компонентов в Битрикс. Для начала немного теории: шаблон компонента – это часть кода в программе, который преобразует информацию, которая, в свою очередь, была подготовлена компонентом в HTML (с английского – Hyper Text Markup Language – это язык гипертекстовой разметки, стандартный язык, благодаря которому осуществляется разметка интернет-страниц). Мало кому известно, что в системе 1С:Битрикс существует множество шаблонов помимо стандартных, например, в шаблоне навигации постранично вмещается целых пять видов шаблонов.


У шаблона компонентов существует два вида:


1. системные – они сразу связаны с компонентом и находятся в папке компонента Битрикс, под названием «templates»;

2. пользовательские – они подстроены под назначение конкретного сайта. Находятся данные шаблоны в папках «/local/templates/шаблон сайта/», но при копировании они переместятся и будут базироваться по пути: /local/templates/шаблон_сайта/components/namespace/название_компонента/название_шаблона.


Определителем шаблонов являются их имена, по умолчанию задано имя «.default». И, в случае отсутствия имени, вызывается именно вышеуказанный шаблон. Другие шаблоны могут иметь произвольное имя.


Шаблон компонента может являться как папками, так и файлами. В случае, когда шаблон не нуждается в переводе на иной язык, дополнении новыми стилями и прочих изменениях, есть возможность его нахождения внутри файла. В ином случае его необходимо сохранить внутри папки.


Шаблон компонента – это неразделимый целый объект, и когда следует поменять шаблон компонента по умолчанию для некого сайта, то его необходимо скопировать полностью в папку с шаблоном сайта Битрикс. Например, существует некий компонент «bitrix:main.site.selector» со своим шаблоном по умолчанию под названием «dropdown». Расположен он в папке компонента «templates». Если данный шаблон необходимо изменить под некоторый веб-сайт, то мы скопируем папку «dropdown» в папку по адресу: «/local/templates/шаблон_сайта/components/bitrix/main.site.selector/», после чего меняем шаблон согласно нашим предпочтениям.


Когда компонент подключается на страницу веб-сайта, право настройки по выводу вида шаблона остаётся за администратором.  


2.    Переменные для шаблона компонента


Подробнее рассмотрим переменные, которыми можно пользоваться для создания и редактирования шаблона компонента:


· $this – переменная, которая содержит ссылку на нынешний шаблон;

· $component – переменная, которая содержит ссылку на нынешний компонент (который вызвали);

· $templateFile – переменная, в которой указывается путь к шаблону;

· $templateFoldet – переменная, содержащая путь к папке с текущим шаблоном, начиная от «DOCUMENT_ROOT»;

· $templateName – переменная с именем шаблона компонента;

· $templateData – переменная, которая передаёт массив данных (эти данные попадут в кеш);

· $arResult – переменная с массивом, в котором содержаться результаты работы компонента;

· $arParams – переменная с массивом параметров, которые входят в компонент;

· $arLangMessages – переменная с массивом языковых сообщений в шаблоне;

· $componentPath – переменная, которая содержит путь к папке, в которой находится компонент от «DOCUMENT_ROOT».


Замечание: если используется PHP шаблон, то в нём есть глобальные переменные «$APPLICATION», «$USER», «$DB».  


3.    Шаблон для простого компонента Битрикс


Отдельно рассмотрим, какие файлы и папки будет содержать папка шаблона для простого компонента Битрикс:


· «/lang» – папка с файлами, которые относятся к переводам и языкам;

· «result_modifier.php» – это файл имеет при входе массив с результатами по работе компонента «$arResult» и массив с свойствами для вызова «$arParams»;

· «component_epilog.php» – это файл, который добавляется после того как шаблон был исполнен;

· «style.css» – это файл, который необходим для выбора стилей шаблона;

· «script.js» – файл для определения и подключения скриптов из JS;

· «.description.php» – это файл, в котором находится описание и имя шаблона для редактора по визуализации;

· «.parameters.php» – файл, имеющий в себе обзор добавочных входящих параметров для редактора по визуализации;

· «template.ext» – это файл, который, по-факту, и есть шаблон, он является обязательным;

· другие необходимые файлы и папки, вроде папки «image» (для картинок, которые нужны шаблону).  


4.    Шаблон для комплексного компонента


Далее опишем шаблон комплексного компонента: в нём будут содержаться такие же файлы и папки, как в простом компоненте, но ещё и дополнительные составляющие, а именно:

· шаблоны для простых компонентов (если они находятся в составе комплексного);

· простые компоненты (если они находятся в составе комплексного компонента), они подключаются в шаблонах по страницам.  


5.    Как подключить шаблон компонентов


Перед тем как подключить шаблон компонентов, необходимо указать <namespace>, название компонента и название шаблона. В начале ядро ведёт проверку наличия данного шаблона на конкретном сайте:


Проверка наличия шаблона компонента

Рис. 1 Проверка наличия шаблона компонента


Шаблон компонентов подключается с помощью команды:


наличие шаблона компонента

Рис. 2 Команда для подключения шаблона компонента


где $templatePage – это только для комплексного компонента, в ином случае – пустое место.


Пример комплексного компонента:


Пример для комплексного компонента

Рис. 3 Пример для комплексного компонента


Пример простого компонента:


Пример для простого компонента

Рис. 4 Пример для простого компонента Битрикс  


6.    Редакция шаблона компонента


Редактирование – это главный способ вывести шаблон из стандартных настроек и подстроить под конкретный сайт. Однако редактировать в системе управления Битрикс стоит только собственный шаблон (пользователя), иначе при первом обновлении в системе шаблон станет прежним.


Скопировать шаблон компонента можно при помощи команды «Копировать шаблон компонента», при этом режим «Правка» должен быть подключён. Во время копирования можно открыть форму, чтобы отредактировать шаблон компонента:


Копирование шаблона компонента

Рис. 5 Копирование шаблона компонента


Пример шаблона:


пример шаблона компонента

Рис. 6 Пример шаблона компонента


Специалист компании «Кодерлайн»

Айдар Фархутдинов

 

Наши проекты

1с-РАРУС МСК
1с-РАРУС МСК

Отрасль:
Разработка компьютерного программного обеспечения

Внедренное типовое решение:
1С:Управление корпоративными финансами

- Финансово-бухгалтерский блок
- Казначейство ...

ООО "СЖД"
ООО "СЖД"

Отрасль:
Торговля, склад, логистика, транспорт

Внедренное типовое решение:
1С:Бухгалтерия 8 ПРОФ

Расчет зарплаты
Подбор кадров
Кадровый учет
Анализ кадрового состава...

Автоматизация торгового учета на базе "1С:Управление торговлей"
ООО «ТЕЛЕВЕС РУСС»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Управление торговлей

- Управление складскими запасами;
- Оформление заказов покупателей;
- Пла...

ПЭК
ПЭК

Отрасль:
Грузоперевозки

Внедренное типовое решение:
1С:Управление производственным предприятием

- Внедрение функционала управления НСИ;
- Рефакторинг;
- Оптимизация общег...

ООО "ОМЗ"
ООО "ОМЗ"

Отрасль:
Металлургическая промышленность, металлообработка

Внедренное типовое решение:
1С:Управление производственным предприятием

Автоматизация бизнес-процессов...

СТС-Медиа
СТС-Медиа

Отрасль:
Медиаиндустрия

Внедренное типовое решение:
1С:Управление холдингом

- Бухгалтерский учет;
- Налоговый учет;
- МСФО (GAAP/управленческий учет);
- Ð...

Автоматизация кадрового учета на базе ПП "1С:Зарплата и управление персоналом" в ТД НМК
ООО «Торговый дом Нальчикский молочный комбинат»

Отрасль:
Торговля

Внедренное типовое решение:
1С:Зарплата и управление персоналом

- Кадровый учет;
- Расчет зарплаты;
- Регламентированная отчетность;
- АÐ...

Автоматизация учета на базе ПП "1С:Комплексная автоматизация 8" в ЗАО "Крюгер-Гранд"
ЗАО «Крюгер-Гранд»

Отрасль:
Производство

Внедренное типовое решение:
1С:Комплексная автоматизация

- Создание интерфейсов и наборов прав пользователей;
- Отражению временных ...

Внедрение блоков в 1С:Комплексная автоматизация 8
ООО «Больцен Рус»

Отрасль:
Оптовая торговля

Внедренное типовое решение:
1С:Комплексная автоматизация

- Оперативный учет...

ООО «Фипар»
ООО «Фипар»

Отрасль:

Внедренное типовое решение:
1С:Предприятие 8. ERP Управление предприятием 2

Специалисты «Кодерлайн» внедрили «1С:ERP. Управление предприятием 2» и автомаÑ...

МИР ХОББИ
МИР ХОББИ

Отрасль:
Торговля. Интернет магазин

Внедренное типовое решение:
1С:ERP Управление предприятием 2.0

Оформление заказов поставщикам
Взаиморасчеты с покупателями
Оформление...

Внедрение ПП "1С:CRM ПРОФ" в ООО «Торговый Дом Факел»
ООО «Торговый Дом Факел»

Отрасль:
Производство

Внедренное типовое решение:
1С:CRM ПРОФ

- Управление отношениями с клиентами (CRM) ...

Наши соц. сети

Telegram-канал «Koderline 1С» Группа в Вконтакте «Кодерлайн КОРП» Rutube

Остались вопросы - обратитесь к нам!

Впишите свои Имя и Телефон, чтобы мы ответили на все интересующие Вас вопросы.
ФИО*
E-mail*
Телефон*
Сообщение