Система управления SATCMS

Шаблоны

В системе SATCMS используется шаблонизатор smarty, как наиболее простой для изучения и предоставляющий богатый набор фукнций от условий до математики.

Единственным ограничением 2ой ветки смарти является неумение справляться с юникодными строками.

Для каждого сайта возможно использовать различные макеты.

Все макеты лежат по адресу /htdocs/templates/*
Подключаются в файле engine.cfg в секции [templates]. В базе сайтов сохраняется числовой ключ макета.

Файлы шаблона:
root.tpl - базовый шаблон макета. Он вызывается при формировании страницы.
node.tpl - шаблон страницы

Наличие этих двух шаблонов достаточно для функционирования простого макета.

Для удобства можно разбить root на более мелкие шаблоны.

/blocks/* - шаблоны блоков
default.css - css макета
error404.tpl - ошибка 404
index.tpl - шаблон главной
pagination.tpl - шаблон для паджинации
sidebar.tpl - сайдбар
_foot.tpl - подвал
_head.tpl - шапка

Пример стандартного root.tpl

{include file="_head.tpl"} <div id="content"> {if $main_template}{include file=$main_template}{/if} </div> {include file="sidebar.tpl"} {include file="_foot.tpl"}

Подключаем шапку, шаблон переданный из cms, подвал.

Если вы не разбирались с движком и не знаете какие данные переданы в шаблон,
вы можете использовать отладку в смарти.

{debug}
{$var|@debug_print_var}

Покажут вам довольно подробную информацию о переменных.
Если вы не знакомы со smarty, можете ознакомиться с конспектом по шаблонизатору.

Для каждой страницы воозможно указать альтернативный рутовый шаблон,
зарегистрированный в файле template.cfg (в папке с макетом) в секции, например:

[templates]
1 = full_list
2 = simple_list

В примере full_list вызовет рутовый шаблон с именем root.full_list.tpl.

Так из альтернативного шаблона можно вызвать оригинальный root.tpl
с имененным основным шаблоном

{* full-list nodes *} {assign var="main_template" value="node_list_full.tpl"} {include file="root.tpl"}