AssetManager Class
Для работы с шаблонами в модулях ImageCMS используется assetManager класс с пространства имен CMSFactory.
Описание
При работе с шаблоном допускается метод липкой связки. Для оглашения:
- пишем класс;
- статический метод create();
- дальше следуют нужные указания;
- обязательно закрепить всё одним из методов отображения шаблонов. Например:
\CMSFactory\assetManager::create()->setData('comment', $comment)->render('successful'); В этом случае будет отображен шаблон “successful.tpl”, и передана переменная comment, которая будет доступна непосредственно в шаблоне как $comment. Так же возможны другие варианты использования. Например если хотите добавить JavaScript файл или файл стилей добавьте в связку registerScript или registerStyle :
\CMSFactory\assetManager::create()
->setData($data)
->registerScript('scriptfile')
->registerStyle('mycss')
->renderAdmin('settings')
Файлы скриптов будут размещены в низу файла, перед закрывающим тегом а файлы стилей будут помещены в конструкцию
Методы
Вот список методов, представленных в классе:
setData()
(mixed $arg1 [, mixed $arg2 = null]) передает данные в шаблон; ранее реализовывалось через:
$this->template->assign(...)
registerScript()
(mixed $name) подключает JS файл(ы) в конец документа; Если указать в качестве $name массив, то все указанные файлы в массиве будут подключены
registerStyle()
(mixed $name) подключает CSS файл(ы) в начало документа; Если указать в качестве $name массив, то все указанные файлы в массиве будут подключены
renderAdmin()
(mixed $tpl_name) отображает указаный шаблон. Используется для отображения шаблонов в административной части;
render()
(mixed $tpl_name [, bool $ignoreWrap = FALSE]) отображает указанный шаблон. Второй параметр является булевым, и указывает отображать шаблон в контексте основного, либо игнорировать его; ранее реализовывалось через:
$this->template->display($file)
fetchTemplate()
(mixed $tpl_name) в отличии от render, возвращает результат шаблонизирования. ранее реализовывалось через:
$this->template->fetch($file)