Файл темы



Зачем он нужен?



Файл темы нужен для того чтобы коренным образом изменить внешний вид сайта. (это если вкратце)



Ну например: на главной одна боковая панель, а на других две (справа и слева), ну или без шапки к примеру или с совсем другой шапкой.



Где они располагаются?



Находятся они в папке: /themes/наша_тема/*.tpl



Естественно должен быть хотя бы один файл темы. Естественно его надо назвать index.tpl



Собственно файл темы с таким именем идет по дефолту на все страницы.



Как именовать файлы темы?



Мы уже выяснили что дефолтное имя index.tpl



Для главной следует назвать main.tpl



Для страницы с двумя колонками (если дефортная с тремя или одной): 2column.tpl

Для страницы без хидера: no_header.tpl







Куда девать подключаемые файлы?



В самом файле теме следует подключать файлы в которых: header.tpl, footer.tpl, leftside.tpl и т д



Некоторые даже создают отдельно для счетчиков counters.tpl



Понятное дело, что это делают чтобы для удаления или замены кода счетчиков нужно было их заменить один раз а не во всех файлах темы.

А вот в корне эти файлы хранить не стоит, их нужно в отдельную папку, обычно inc:

/themes/наша_тема/inc/*.tpl





Кстати этим файлам необязательно расширение tpl делать, можно php или txt

Как сменить файл темы?



Если нужно сменить файл темы, то для обычных страниц он меняется во вкладке вид.



Для остальных компонентов нужно править контроллер, вставив строку:



$this->page['theme']['file'] = '2column';





Боковую панель делать во вьюхе компонента или файлом темы?



Если у нас есть боковая панель #leftside, и ее нужно то включать то выключать на разных страницах, то универсальнее ее сделать с помощью отдельного файла темы.

Но можно и с помощью разных вьюх компонента, то тогда эта вьюха будет доступна только к этому компоненту.