Добавление информации о заказе в письмо-уведомление — различия между версиями

Материал из Umicms
Перейти к:навигация, поиск
м (переименовал «Добавление информации о заказе и личных данных в письмо-уведомление» в «[[Добавление информации о заказе в письмо-уведомл�)
Строка 14: Строка 14:
 
<xsl:template match="udata" mode= "unic">
 
<xsl:template match="udata" mode= "unic">
 
   <div class="order">
 
   <div class="order">
   <p>____________________________________________</p>
+
   <hr/>
 
   <xsl:apply-templates select="items/item" mode = "lin"/>
 
   <xsl:apply-templates select="items/item" mode = "lin"/>
   <p>____________________________________________</p>
+
   <hr/>
 
   <p>Всего товаров: <xsl:value-of select="summary/amount" /> шт.</p>
 
   <p>Всего товаров: <xsl:value-of select="summary/amount" /> шт.</p>
 
   <p>На сумму: <xsl:value-of select="summary/price" /><xsl:value-of select="summary/price/@suffix" />. </p>
 
   <p>На сумму: <xsl:value-of select="summary/price" /><xsl:value-of select="summary/price/@suffix" />. </p>
Строка 27: Строка 27:
 
</xsl:template>
 
</xsl:template>
 
</source>
 
</source>
 +
 +
[[Категория:Верстка в XSLT]][[Категория:Модуль Интернет магазин]]

Версия 14:10, 26 октября 2012

Задача. Необходимо добавить в письмо, которое приходит клиенту и администратору сайта информацию о содержимом заказа, а также личные данные пользователя.

Решение. Для реализации поставленной задачи нужно отредактировать шаблон, по которому формируется письмо-уведомление о заказе: \xsltTpls\mail\emarket\default.xsl

В шаблон

<xsl:template match="status_notification">

добавляем

<xsl:apply-templates select="document(concat('udata://emarket/order/',@order_number))" mode= "unic"/>

А в шаблоны

<xsl:template match="status_notification_receipt">, <xsl:template match="neworder_notification">

добавляем

<xsl:apply-templates select="document(concat('udata://emarket/order/',order_id))" mode= "unic"/>

Теперь осталось написать шаблон, который будет добавлять требуемую информацию в письмо:

<xsl:template match="udata" mode= "unic">
   <div class="order">
   <hr/>
   <xsl:apply-templates select="items/item" mode = "lin"/>
   <hr/>
   <p>Всего товаров: <xsl:value-of select="summary/amount" /> шт.</p>
   <p>На сумму: <xsl:value-of select="summary/price" /><xsl:value-of select="summary/price/@suffix" />. </p>
   </div>
</xsl:template>
	
<xsl:template match="udata//item" mode= "lin">
   <p><a href="{page/@link}"><xsl:value-of select="@name"/></a></p>
   <p>Цена:  <xsl:value-of select="price"/> <xsl:value-of select="price/@suffix" />. Количество: <xsl:value-of select="amount"/> шт.</p>
</xsl:template>