Класс 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 |
Алексей Абисфамилинный
|
||
Ссылка на объект шаблона &$this->GetTemplate() доступна только после подключения шаблона компонента, то есть после выполнения метода $this->IncludeComponentTemplate(), который обычно вызывается в конце работы компонента; до подключения шаблона метод &$this->GetTemplate() не вернет объект, поэтому использовать $template->GetFile() нельзя.
То есть имеем:
| ||
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Пользовательские комментарии
Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.Для этого нужно всего лишь авторизоваться на сайте
Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.
Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.