Получение текущего шаблона в кастомном методе — различия между версиями
Материал из Umicms
Kalexey (обсуждение | вклад) |
Vitaliks (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
− | [[category:Вопросы и уроки разработки сайтов на UMI.CMS]] | + | [[category:Вопросы и уроки разработки сайтов на UMI.CMS]][[Категория:Написание кастомных макросов]] |
− | + | '''Актуально для версии 20''' | |
− | ''' | + | |
− | + | == Задача == | |
− | + | ||
В кастомном методе узнать какой шаблон используется системой, если шаблоны хранятся в [http://help-dev.umi-cms.ru/chapter.newTemplates.html новом формате]. | В кастомном методе узнать какой шаблон используется системой, если шаблоны хранятся в [http://help-dev.umi-cms.ru/chapter.newTemplates.html новом формате]. | ||
− | + | ||
− | + | == Решение == | |
− | + | ||
− | + | ||
− | |||
Нужно воспользоваться методами контроллера системы: | Нужно воспользоваться методами контроллера системы: | ||
− | + | ||
<source lang="php"> | <source lang="php"> | ||
− | // Полный путь | + | // Полный путь к файлам используемого шаблона |
$template_path = cmsController::getInstance()->getResourcesDirectory(true); | $template_path = cmsController::getInstance()->getResourcesDirectory(true); | ||
Строка 19: | Строка 18: | ||
$template_name = cmsController::getInstance()->detectCurrentDesignTemplate()->getName(); | $template_name = cmsController::getInstance()->detectCurrentDesignTemplate()->getName(); | ||
</source> | </source> | ||
− | |||
При использовании старого формата хранения шаблонов, функции возвращают NULL. | При использовании старого формата хранения шаблонов, функции возвращают NULL. | ||
− | + | ||
+ | |||
+ | '''Примечание''' | ||
+ | |||
+ | Данный функционал был проверен на работоспособность в версии системы 2.8.5.1. |
Текущая версия на 10:26, 31 октября 2019
Актуально для версии 20
Задача
В кастомном методе узнать какой шаблон используется системой, если шаблоны хранятся в новом формате.
Решение
Нужно воспользоваться методами контроллера системы:
// Полный путь к файлам используемого шаблона
$template_path = cmsController::getInstance()->getResourcesDirectory(true);
// Имя папки используемого шаблона
$template_name = cmsController::getInstance()->detectCurrentDesignTemplate()->getName();
При использовании старого формата хранения шаблонов, функции возвращают NULL.
Примечание
Данный функционал был проверен на работоспособность в версии системы 2.8.5.1.