Добавление информации о заказе в письмо-уведомление — различия между версиями
Материал из Umicms
SpeLL (обсуждение | вклад) |
Velross (обсуждение | вклад) |
||
(не показаны 4 промежуточные версии 2 участников) | |||
Строка 1: | Строка 1: | ||
+ | '''Актуально для версии 2.9''' | ||
+ | |||
Задача. | Задача. | ||
Необходимо добавить в письмо, которое приходит клиенту и администратору сайта информацию о содержимом заказа, а также личные данные пользователя. | Необходимо добавить в письмо, которое приходит клиенту и администратору сайта информацию о содержимом заказа, а также личные данные пользователя. | ||
Строка 5: | Строка 7: | ||
Для реализации поставленной задачи нужно отредактировать шаблон, по которому формируется письмо-уведомление о заказе: \xsltTpls\mail\emarket\default.xsl | Для реализации поставленной задачи нужно отредактировать шаблон, по которому формируется письмо-уведомление о заказе: \xsltTpls\mail\emarket\default.xsl | ||
− | В шаблон <source lang="xml"><xsl:template match="status_notification"></source> добавляем <source lang="xml"><xsl:apply-templates select="document(concat('udata://emarket/order/', | + | В шаблон <source lang="xml"><xsl:template match="status_notification"></source> добавляем <source lang="xml"><xsl:apply-templates select="document(concat('udata://emarket/order/',order_id))" mode= "unic"/></source> |
А в шаблоны <source lang="xml"><xsl:template match="status_notification_receipt">, <xsl:template match="neworder_notification"></source> добавляем <source lang="xml"><xsl:apply-templates select="document(concat('udata://emarket/order/',order_id))" mode= "unic"/></source> | А в шаблоны <source lang="xml"><xsl:template match="status_notification_receipt">, <xsl:template match="neworder_notification"></source> добавляем <source lang="xml"><xsl:apply-templates select="document(concat('udata://emarket/order/',order_id))" mode= "unic"/></source> | ||
Строка 14: | Строка 16: | ||
<xsl:template match="udata" mode= "unic"> | <xsl:template match="udata" mode= "unic"> | ||
<div class="order"> | <div class="order"> | ||
− | < | + | <hr/> |
<xsl:apply-templates select="items/item" mode = "lin"/> | <xsl:apply-templates select="items/item" mode = "lin"/> | ||
− | < | + | <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> | ||
− | |||
</div> | </div> | ||
</xsl:template> | </xsl:template> | ||
Строка 28: | Строка 29: | ||
</xsl:template> | </xsl:template> | ||
</source> | </source> | ||
+ | |||
+ | [[Категория:Верстка в XSLT]][[Категория:Модуль Интернет магазин]] |
Текущая версия на 06:53, 15 ноября 2013
Актуально для версии 2.9
Задача. Необходимо добавить в письмо, которое приходит клиенту и администратору сайта информацию о содержимом заказа, а также личные данные пользователя.
Решение. Для реализации поставленной задачи нужно отредактировать шаблон, по которому формируется письмо-уведомление о заказе: \xsltTpls\mail\emarket\default.xsl
В шаблон
<xsl:template match="status_notification">
добавляем
<xsl:apply-templates select="document(concat('udata://emarket/order/',order_id))" 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>