Демо-дизайн "Современный" — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
Строка 31: Строка 31:
  
 
Для знакомства с xslt-шаблонизатором имеет смысл ознакомиться с учебным пособием, которое можно скачать здесь:  
 
Для знакомства с xslt-шаблонизатором имеет смысл ознакомиться с учебным пособием, которое можно скачать здесь:  
  http://www.umi-cms.ru/support/docs/xslt-umi-devbook/
+
  http://docs.umi-cms.ru/xslt-umi-devbook/
 
[[Категория:Верстка в XSLT|Современный]]
 
[[Категория:Верстка в XSLT|Современный]]

Текущая версия на 12:40, 30 сентября 2015

Первое знакомство

Если Вы решили использовать демо-дизайн "Современный", то Вам предстоит познакомиться с устройством шаблонов. Эта статья должна Вам в этом немного помочь.

Все шаблоны xslt-шаблонизатора находятся в папке xsltTpls. По умолчанию, входной точкой во все шаблоны является default.xsl Этот шаблон нужен только для того, чтобы пред-определить все наиболее часто встречающиеся значения и присвоить их переменным, а также подключить основные шаблоны.

Кроме шаблона default.xsl в папке xsltTpls находятся другие подпапки. В первую очередь стоит обратить внимание на папку "layouts". В ней находится только один шаблон default.xsl. Это основной шаблон, который определяет общий внешний вид страницы. Именно в нём задаётся основная разметка и "вход" в шаблоны

<xsl:template match="/" mode="layout">. 

Сам шаблон можно условно поделить следующие части: шапка, дно, левое меню, правое меню и контент. Все поля, кроме контента, не меняют своего содержания, т.е. отвечают за вывод одних и тех же элементов оформления (будь то вывод последних новостей или меню). Иначе дело обстоит с контентом.
В xslt-шаблонизаторе для всех страниц определён метод и модуль, т.е. способ их формирования. Можно посмотреть как выглядит страница в виде xml-документа, если после адреса страницы дописать .xml (к примеру так www.ваш_сайт.ru/любая_страница/.xml). В первой строке буде узел result и у него два атрибута module и method.
Если Вы открываете страницу контента, то шаблонизатор вернёт заголовок result:

module="content" method="content"

если открывать страницу с объектом каталога то заголовок result уже будет таким:

module="catalog" method="object" 

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

<xsl:apply-templates select="result" />

Теперь вернёмся к организации шаблонов. Все шаблоны подключаются в главном файле через вызов вида:

modules/имя_модуля/common.xsl

Сам файл common.xsl не содержит какой-либо полезной информации, он просто подключает все шаблоны из этой же папки. Шаблоны, для удобства, называются также как макросы, за результат отработки которых они отвечают.

Отдельно нужно ответить шаблоны:
common.xsl в папке xsltTpls здесь лежат те макросы, которые на языке tpl называются системными (system)
папка library также содержит шаблоны, отвечающие за обработку системных макросов.
sample.xsl в папке xsltTpls содержит пример самой простой страницы на xslt
папка sys-tpls содержит шаблоны преобразования данных для служебных целей (печать заказов, карта google и другие)

Для знакомства с xslt-шаблонизатором имеет смысл ознакомиться с учебным пособием, которое можно скачать здесь:

http://docs.umi-cms.ru/xslt-umi-devbook/