Документация для разработчиков
Темная тема

Класс CBitrixComponentTemplate

Описание

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

Для получения доступа к методам этого класса внутри компонента (после инициализации шаблона) нужно получить объект шаблона с помощью метода компонента CBitrixComponent::GetTemplate:

$template = & $this->GetTemplate();
$templateFile = $template->GetFile();

С версии 15.5.1 стало возможным использования внешних файлов css без дополнительных манипуляций с кодом. Для этого достаточно в файле template.php нужного компонента прописать:

$this->addExternalCss("/local/styles.css");
$this->addExternalJS("/local/liba.js");

Список методов

Метод Описание С версии
GetSiteTemplate Метод возвращает шаблон сайта, в котором лежит шаблон компонента.
GetName Метод возвращает имя шаблона компонента.
GetFolder Метод возвращает путь к папке шаблона относительно корня сайта.
GetFile Метод возвращает путь к файлу шаблона относительно корня сайта.
getComponent Метод возвращает ссылку на экземпляр класса CBitrixComponent. 15.5.10
addExternalCss Метод для подключения стороннего css. 15.5.1
addExternalJs Метод для подключения стороннего JS. 15.5.1


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
4
Алексей Абисфамилинный
Ссылка на объект шаблона &$this->GetTemplate() доступна только после подключения шаблона компонента, то есть после выполнения метода $this->IncludeComponentTemplate(), который обычно вызывается в конце работы компонента; до подключения шаблона метод &$this->GetTemplate() не вернет объект, поэтому использовать $template->GetFile() нельзя.

То есть имеем:

Код
$this->IncludeComponentTemplate();
//любой код здесь
$template = & $this->GetTemplate();
$templateFile = $template->GetFile();
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх