Скины
Основная информация
В проекте есть возможность использования нескольких вариантов оформления(скинов)
Скины располагаются в папке /site/skins для каждого скина своя папка
Пример: /site/skins/skin1 /site/skins/skin2
внутри папки со скином обязательно должны быть файл index.tpl и папка template_c
внутри template_с smarty хранит откомпилированные шаблоны
А файл index.tpl содержит базовое оформление
внутри файла index.tpl, в области контента необходимо вызывать функцию {site::getContent()} которая отрисует в область контента необходимую TPL основываясь на текущем плагине/контроллере/экшне
Также в папке со скином должна быть папка public которая должна содержать JS/CSS/Изображения
Также смотри Автоподключение стилей
Логика использования шаблона в определённом экшне
Функция site::getContent() отрисовывает шаблон, основываясь на текущих параметрах Module(плагин),Controller,Action
т.е. если мы обратились к урл http://site.ru/users/index/list
То будут вызваны
Плагин - users Контроллер - IndexController Экшн - listAction
Для отображения содержимого этого функционала функция getContent будет искать шаблон с именем list.tpl в следующих папках:
/site/skins/<текущий скин>/views/users/index/list.tpl ^^^^^ ^^ ^^^ плагин Кнтрл Экшн /site/plugins/users/views/index/list.tpl /plugins/users/views/index/list.tpl
первый найденный шаблон будет отрисован в область контента
Переключение скина в контроллере
Внутри контроллера выбрать используемый скин можно с помощью метода $this->setSkin(<имя скина>);