Системные страницы — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
 
(не показаны 3 промежуточные версии этого же участника)
Строка 2: Строка 2:
 
Есть ряд тонкостей, которые необходимо понимать:<br/>
 
Есть ряд тонкостей, которые необходимо понимать:<br/>
 
'''1.''' в tpl-шаблонезаторе, для системных страниц используется шаблон-дизайна, установленный по умолчанию. Причём в этом шаблоне <b>обязательно</b> должен присутствовать макрос %content% <br/>
 
'''1.''' в tpl-шаблонезаторе, для системных страниц используется шаблон-дизайна, установленный по умолчанию. Причём в этом шаблоне <b>обязательно</b> должен присутствовать макрос %content% <br/>
 +
Подробнее, о том, как определяется содержимое и его оформление можно прочитать в разделе [http://dev.docs.umi-cms.ru/shablony_i_makrosy/tpl-shablonizator_umi_cms/obwie_svedeniya/#print «Вывод страницы в браузер»] главы, посвященной TPL-шаблонизатору.<br/>
 
'''2.''' в xslt-шаблонезаторе системные страницы сами по себе не возвращают данные о текущем состоянии системы. Для этого необходимо вызвать дополнительный обработчик, для полученого в <result ...></result> метода и модуля. <br/>
 
'''2.''' в xslt-шаблонезаторе системные страницы сами по себе не возвращают данные о текущем состоянии системы. Для этого необходимо вызвать дополнительный обработчик, для полученого в <result ...></result> метода и модуля. <br/>
 
К примеру:<br/>
 
К примеру:<br/>
Строка 18: Строка 19:
  
 
Здесь нет данных о положенных в корзину товаров. Для того что бы получить данные о произведённом заказе необходимо использовать дополнительный вызов <i>udata://emarket/cart</i><br/><br/>
 
Здесь нет данных о положенных в корзину товаров. Для того что бы получить данные о произведённом заказе необходимо использовать дополнительный вызов <i>udata://emarket/cart</i><br/><br/>
 
+
<source lang="xml">
 
+
<xsl:template match="result[@method = 'cart']">
'''4.''' вот пример некоторых системных страниц: <br/>
+
<xsl:apply-templates select="//steps" />
 +
<xsl:apply-templates select="document('udata://emarket/cart')/udata" />
 +
</xsl:template>
 +
</source>
 +
'''3.''' вот пример некоторых системных страниц: <br/>
 
<ul>
 
<ul>
 
<li>../search/search_do/</li>
 
<li>../search/search_do/</li>
Строка 26: Строка 31:
 
<li>../users/settings/</li>
 
<li>../users/settings/</li>
 
<li>../emarket/cart/</li>
 
<li>../emarket/cart/</li>
 +
<li>../users/registrate/</li>
 
</ul>
 
</ul>
 +
 +
[[Категория:Вопросы и уроки разработки сайтов на UMI.CMS]]

Текущая версия на 13:35, 30 апреля 2014

Кроме обычных страниц контента, в системе UMI.CMS присутствуют системные страницы. Работа с ними чуть отличается от работы с обычными.

Есть ряд тонкостей, которые необходимо понимать:
1. в tpl-шаблонезаторе, для системных страниц используется шаблон-дизайна, установленный по умолчанию. Причём в этом шаблоне обязательно должен присутствовать макрос %content%
Подробнее, о том, как определяется содержимое и его оформление можно прочитать в разделе «Вывод страницы в браузер» главы, посвященной TPL-шаблонизатору.
2. в xslt-шаблонезаторе системные страницы сами по себе не возвращают данные о текущем состоянии системы. Для этого необходимо вызвать дополнительный обработчик, для полученого в <result ...></result> метода и модуля.
К примеру:

<result xmlns:xlink="http://www.w3.org/TR/xlink" module="emarket" method="cart" domain="equites7987.demo.umi-cms.ru" lang="ru" header="Корзина товаров" title="UMI.CMS - Корзина товаров" request-uri="/emarket/cart/.xml">
<meta>
<keywords>
umi CMS демо DEMO сайт система управление
</keywords>
<description/>
</meta>
<user id="2373" type="guest"/>
</result>
<!-- This page generated in 0.10675 secs -->

Здесь нет данных о положенных в корзину товаров. Для того что бы получить данные о произведённом заказе необходимо использовать дополнительный вызов udata://emarket/cart

	<xsl:template match="result[@method = 'cart']">
		<xsl:apply-templates select="//steps" />
		<xsl:apply-templates select="document('udata://emarket/cart')/udata" />
	</xsl:template>

3. вот пример некоторых системных страниц:

  • ../search/search_do/
  • ../emarket/compare/
  • ../users/settings/
  • ../emarket/cart/
  • ../users/registrate/