Компоненты в Битрикс. Переменные

Компоненты в Битрикс. Переменные
Блог
03.03.2020 12:40:00

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

Так как компонент состоит из нескольких файлов, в каждом из которых доступны определенные вспомогательные переменные. Давай те рассмотрим основные вспомогательные переменные.

Доступны во всех файлах компонента: component.php, result_modifier.php, template.php, component_epilog.php

  • $APPLICATION, $USER, $DB — глобальные массивы все доступны в файлах компонента. Объявлять их глобально global не требуется.

  • $arParams — здесь содержатся все параметры, которые заполняются в настройках компонента.

  • $arResult — в массиве хранятся результаты исполнения компонента.


Файл component.php

  • $this — ссылка для обращения к классу компонента (объект класса CBitrixComponent)

  • $componentPath — путь к вызванному компоненту от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list или /local/components/firma/list)

  • $componentName — имя вызванного компонента  (пример: bitrix:news.list)

  • $componentTemplate — название шаблона, указанного в настройках вызванного компонента (пример: .default)


Файл result_modifier.php

  • $arResult — так же присутствует и его можно модифицировать. Данный файл собственно и нужен для изменения результатов, добавления или их преобразования.

  • $this — ссылка на текущий шаблон, точнее объект, описывающий шаблон, тип CBitrixComponentTemplate


Файл template.php

  • $this - ссылка на текущий шаблон, тип CBitrixComponentTemplate

  • $templateName — имя шаблона вызываемого компонента (пример: .dеfault)

  • $templateFile — путь к файлу шаблона от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list/templates/.default/template.php)

  • $templateFolder - путь к папке с шаблоном от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list/templates/.default)

  • $componentPath - путь к папке с компонентом от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list)

  • $component — ссылка на текущий вызванный компонент типа CBitrixComponent


Особенно нужно здесь выделить $templateData

  • $templateData — в нем можно передать данные из template.php в файл component_epilog.php.

Так как component_epilog.php исполняется на каждом хите, то эти данные так же попадут в кеш.


Файл component_epilog.php

  • $componentPath — путь к папке с компонентом от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list)

  • $component и $this - по сути одно и тоже, ссылка на вызванный компонент, на объект класса CBitrixComponent

  • $epilogFile — путь к файлу component_epilog.php относительно корня сайта DOCUMENT_ROOT

  • $templateName - имя шаблона компонента (пример: .dеfault)

  • $templateFile — путь к файлу шаблона от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/news.list/templates/.default/template.php)

  • $templateFolder — путь к папке с шаблоном от корня сайта DOCUMENT_ROOT (пример: /bitrix/components/bitrix/iblock.list/templates/.default)

Что я предлагаю

Создам для Вас -

  • Уникальный адаптивный дизайн
  • Заключение договора

Заполните форму