CMS RUEN
ruen.suCMS RUEN
RUEN
ПоддержкаПродвижениеНастройкаОформлениеРазработка

Шаблоны и шаблонирование

CMS RUEN дает возможность использовать шаблоны для оформления информации, выдаваемой компонентами. При этом мы придерживаемся правила, что изначально информация должна корректно отображаться и настраиваться обычными пользователями CMS без шаблонов. В то же время опытные пользователи, владеющие знаниями верстки сайтов, смогут настроить выдачу информации по своему усмотрению. Чтобы все это работало правильно, при разработке компонентов следует использовать следующие механизмы работы с шаблонами.

Подготовка данных

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

#
#  Подготовка данных
#
$_template = array();

$_template['adminka'] = '';
$_template['title'] = '';
$_template['link'] = $ruen_wpath_site.$i1.$blog_id1.$i2.'post'.$i3.$blog_posts[$_num][0].$i99;
$_template['image'] = '';
$_template['description'] = '';
$_template['date'] = '';
$_template['user'] = '';

$_template['tags'] = '';
$_template['themes'] = '';
$_template['moods'] = '';
$_template['comments'] = '';

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

Подготовка шаблона

При загрузке сайта все доступные шаблоны определяются на основе основного файла оформления сайта. Полный перечень шаблонов сводятся в единый массив $ruen_templates. Данный массив можно использовать в настройке компонента, чтобы назначать разные шаблоны разным элементам страницы.

Для корректной работы сайта необходимо также предусмотреть шаблон по-умолчанию, который изначально должен быть доступен в переменной $_template_page. Пример такого шаблона представлен ниже. Маркеры можно указывать как в квадратных скобках – [title], так и в виде HTML-комментариев – <!-- title -->. Во втором случае, если данных для маркера нет, то он и не будет отображаться. Также при сборке шаблона по-умолчанию можно пользоваться проверкой данных на наличие нужных и просто не выводить пустые значения.

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

#
#  Подготовка шаблона
#
$_template_page = '<h2>[title]</h2>'.
                  '<p>[description]</p>';

Обработка шаблона

Функция шаблонизатора выполняет совмещение шаблона и подготовленных для него данных. Нужный шаблон можно указать в параметрах функции. Проверка на его наличие будет автоматически выполнена при запуске функции и при отрицательном результате будет использован шаблон по-умолчанию.

#
#  Обработка шаблона
#
$ruen_page .= ruen_templater($blog_options_templates_pagemain_post);

2 | 1 2017.12.14, 23:02
Информация на данной странице недостаточно понятна, не полна или содержит ошибки? Просто напишите нам об этом и мы все исправим.Напишите замечание!