Библиотека шаблонов и стилей

Библиотека шаблонов и стилей сайта представляет собой набор XSL-кодов (правил), применяемых к различным наборам XML-данных отображаемых страниц. Основная задача библиотеки - генерация HTML-кода для отдельных блоков и всей страницы с требуемым оформлением. Библиотека каждого сайта (проекта) состоит из одного собственного файла и нескольких общих:

site_templates.xsl - Набор собственных или переопределенных шаблонов, стилей и подстилей сайта.
treegraph.xsl - Набор общих шаблонов, стилей и вспомогательных подстилей для всех проектов.
mailerx.xsl - Набор общих стилей для оформления рассылки.
vote.xsl - Набор общих стилей для оформления голосования.
forumx.xsl - Набор общих стилей для организации структурированного форума.

Шаблон представляет собой XSL-код, описывающий структуру всей страницы сайта. Сайт может иметь несколько шаблонов для вывода отдельных страниц или ветвей. Для создания шаблона используется следующая конструкция:

< xsl:template match='/page[@style="ИМЯ_ШАБЛОНА"]' description="НАЗВАНИЕ ШАБЛОНА ">

  ТЕЛО ШАБЛОНА

< /xsl:template>

ИМЯ_ШАБЛОНА - уникальное имя шаблона, переменная, содержащая только латинские буквы, символ _ и цифры.
НАЗВАНИЕ ШАБЛОНА - краткое описание шаблона для выбора его при установке параметров "шаблон ветви" и "шаблон сообщения".
ТЕЛО ШАБЛОНА - содержит текст, HTML-, XSL-теги и наборы "позиций" для вставки блоков (см. ниже).

Стиль представляет собой XSL-код, описывающий структуру и внешний вид блока (набора данных) и логику его формирования. Стиль может сам формировать HTML-код из каких-либо атрибутов и параметров объектов, а может использовать различные вспомогательные подстили. Результат применения стиля к блоку представляет собой готовый HTML-код, который выводится в указанную позицию шаблона. Для создания стиля используется следующая конструкция:

< xsl:template match='message[@style="ИМЯ_СТИЛЯ"]' description="НАЗВАНИЕ СТИЛЯ">

  ТЕЛО СТИЛЯ

< /xsl:template>

ИМЯ_СТИЛЯ - уникальное имя стиля, переменная, содержащая только латинские буквы, символ _ и цифры.
НАЗВАНИЕ СТИЛЯ - краткое описание стиля для выбора его при установке параметров "стиль ветви" и "стиль сообщения".
ТЕЛО СТИЛЯ - содержит текст, HTML-, XSL-теги и вызовы вспомогательных подстилей.

Подстиль - это вспомогательный XSL-код, формирующий внешний вид (HTML-код) для одного объекта или отдельных параметров объекта. Подстили не имеют описания и могут использоваться только для применения в основных стилях или других вспомогательных подстилях. Для каждого подстиля можно задать к каким типам XML-данных он будет применяться и при выполнении каких условий. Для создания подстилей используются следующие конструкции:

< xsl:template match='message[УСЛОВИЕ]' mode='ИМЯ_ПОДСТИЛЯ'>

  ТЕЛО ПОДСТИЛЯ

< /xsl:template>

 

< xsl:template match='*[УСЛОВИЕ]' mode='ИМЯ_ПОДСТИЛЯ'>

  ТЕЛО ПОДСТИЛЯ

< /xsl:template>

 

< xsl:template name='ИМЯ_ПОДСТИЛЯ'>

  ТЕЛО ПОДСТИЛЯ

< /xsl:template>

ИМЯ_ПОДСТИЛЯ - уникальное имя стиля, переменная, содержащая только латинские буквы, символ _ и цифры.
ТЕЛО СТИЛЯ - содержит текст, HTML-, XSL-теги и вызовы других подстилей.

Для вызова подстилей используются следующие конструкции:

< xsl:apply-templates select='current()' mode='ИМЯ_ПОДСТИЛЯ'/>

 

< xsl:apply-templates select='current()' mode='ИМЯ_ПОДСТИЛЯ'>

    < xsl:with-param name='ИМЯ_ПАРАМЕТРА' select='ЗНАЧЕНИЕ_ПАРАМЕТРА'/>

< /xsl:apply-templates>

 

Списки представляют собой разновидность подстилей и предназначены для формирования внешнего вида одного объекта блока. Самостоятельного значения списки не имеют, а используются как вспомогательные подстили для некоторых стилей (с управляемым списком). Для создания списка используется следующая конструкция:

< xsl:template match='message[@cell="ИМЯ_СПИСКА"]' mode='cell_standart' description="ОПИСАНИЕ СПИСКА">

  ТЕЛО СПИСКА

< /xsl:template>

ИМЯ_СПИСКА - уникальное имя списка, переменная, содержащая только латинские буквы, символ _ и цифры.
ОПИСАНИЕ СПИСКА - краткое описание списка для выбора его при установке параметров "список ветви" и "список сообщения".
ТЕЛО СПИСКА - содержит текст, HTML-, XSL-теги и вызовы вспомогательных подстилей.

Для вызова списка внутри стиля используются следующие конструкции:

< xsl:apply-templates select='current()' mode='cell_standart'/>

 

< xsl:apply-templates select='current()' mode='cell_standart'>

    < xsl:with-param name='ИМЯ_ПАРАМЕТРА' select='ЗНАЧЕНИЕ_ПАРАМЕТРА'/>

< /xsl:apply-templates>

 

Позиция представляет собой место в шаблоне (точку) для вставки сформированных блоков. В разных шаблонах можно использовать как один и тот же набор позиций, так и различные наборы. Позиция в шаблонах с именем main используется для вывода содержимого текущего объекта страницы. Для задания позиции в теле шаблона используется следующая конструкция:

< xsl:apply-templates select='//message[@position="ИМЯ_ПОЗИЦИИ"]' description='ОПИСАНИЕ ПОЗИЦИИ'/>

ИМЯ_ПОЗИЦИИ - переменная, содержащая латинские буквы, _ и цифры.
ОПИСАНИЕ ПОЗИЦИИ - краткое описание (название) позиции для выбора ее при установке параметра блока "позиция".

Администратор с помощью модуля Стили может изменять (добавлять) только свои собственные шаблоны и стили, находящиеся в файле site_templates.xsl. Но при этом, он может переопределить любой общий шаблон или стиль, создав свой альтернативный с таким же именем. Возможно и "частичное" переопределение стиля, с указанием дополнительного условия его применения. Т.е., если в определении собственного стиля (подстиля) задано какое-либо условие и оно выполняется для объекта, то будет применен собственный стиль. В противоположном случае применяется общий стиль из библиотеки.

документацияОписание шаблонов
документацияОписание стилей
документацияОписание списков
Поиск по документации
Контактная информация
603000, Россия,
г. Нижний Новгород,
ул. Студеная, дом 5,
4-й этаж.
info@graphit.ru

(831) 260–16–32