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

Содержание:

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.3.

Специалисты «Кодерлайн» помогли разработать и внедрить автоматизированную систему управления финансовой и закупочной деятельностью (АС ФЗД) ...

Компания IBS
Компания IBS

Отрасль:
Системный интегратор

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

- Интеграция систем – АСУП и «1С:Управление производственным предприятием»...

Апгрейд 1С:Бухгалтерия 8 ПРОФ (USB) до версии 1С:Бухгалтерия 8 КОРП (USB)
ООО «Ява Строй»

Отрасль:
Строительство

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

- Создание чистых конфигураций. Внесение изменений в БД ЗУП и новая расчетная ведомость;
- Администрирование MS SQL Server;
- Сжати...

АО "Нижегородский водоканал"
АО "Нижегородский водоканал"

Отрасль:
Профессиональные услуги

Внедренное типовое решение:
1С:Зарплата и управление персоналом 8. КОРП

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

ООО ХДМ Рус
ООО ХДМ Рус

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

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

Управление цепочками поставок Оптовая торговля ...

ООО «Экслтрейд»
ООО «Экслтрейд»

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

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

Оформление заказов поставщикам Оптовая торговля Торговые операции ...

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

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

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

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

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

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

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

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

ФГУП «Почта России»
ФГУП «Почта России»

Отрасль:
Почта, доставка

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

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

ЗАО «Инвестгеосервис»
ЗАО «Инвестгеосервис»

Отрасль:
Нефтесервис

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

Объемно-календарное планирование производства Автоматизация бизнес-процессов Анализ деятельности в разрезе проектов Планирование проектов У...

ООО ХДМ Рус
ООО ХДМ Рус

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

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

Бухгалтерский учет Банк и касса Расчеты с контрагентами Торговые операции ...

Автоматизация кадрового учета на базе «1С:ERP Управление предприятием 2.0»
Автопредприятие ПАО «Газпром»

Отрасль:
Транспорт

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

- Настройка подсистемы кадрового учета;
- Перенос персональных данных;
- Заполнение НСИ и классификаторов. ...

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

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

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

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