Получение текущего шаблона в кастомном методе — различия между версиями
Материал из Umicms
Mad grant (обсуждение | вклад)  | 
				Vitaliks (обсуждение | вклад)   | 
				||
| (не показана 1 промежуточная версия 1 участника) | |||
| Строка 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">  | ||
// Полный путь к файлам используемого шаблона  | // Полный путь к файлам используемого шаблона  | ||
| Строка 19: | Строка 18: | ||
$template_name = cmsController::getInstance()->detectCurrentDesignTemplate()->getName();  | $template_name = cmsController::getInstance()->detectCurrentDesignTemplate()->getName();  | ||
</source>  | </source>  | ||
| − | |||
При использовании старого формата хранения шаблонов, функции возвращают NULL.  | При использовании старого формата хранения шаблонов, функции возвращают NULL.  | ||
| − | + | ||
| − | + | ||
| − | + | '''Примечание'''  | |
| − | + | ||
| − | '''Примечание'''  | ||
| − | |||
| − | |||
Данный функционал был проверен на работоспособность в версии системы 2.8.5.1.  | Данный функционал был проверен на работоспособность в версии системы 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.