Логотип

Документация по макросам и шаблонам UMI.CMS

<?=$this->render($this->macros('emarket', 'price', array($page->getId())), 'emarket/price')?>

Пример вызова

udata://emarket/price/68/notemplate/1

XML-ответ UData

<udata element-id="68" module="emarket" method="price" generation-time="0.117425">
 <discount id="640" name="25% новогодняя скидка">
  <description>25% новогодняя скидка на все телевизоры</description>
 </discount>
 <price name="Российский рубль" rate="1" nominal="1" suffix="руб">
  <original>800</original>
  <actual>600</actual>
 </price>
 <currencies>
  <price>
   <original>800</original>
   <actual>600</actual>
  </price>
  <price name="Американский доллар" rate="31.5" nominal="1" prefix="$">
   <original>25.4</original>
   <actual>19.05</actual>
  </price>
  <price name="Евро" rate="35" nominal="1" prefix="€">
   <original>22.86</original>
   <actual>17.14</actual>
  </price>
 </currencies>
 <currency-prices>
  <items>
   <item name="Американский доллар" rate="31.5" nominal="1" prefix="$">
    <original>25.4</original>
    <actual>19.05</actual>
    <price-original>25.4</price-original>
    <price-actual>19.05</price-actual>
   </item>
   <item name="Евро" rate="35" nominal="1" prefix="€">
    <original>22.86</original>
    <actual>17.14</actual>
    <price-original>22.86</price-original>
    <price-actual>17.14</price-actual>
   </item>
  </items>
 </currency-prices>
</udata>

Элементы и атрибуты

<discount>

Элемент, описывающий скидку на указанный товар.

@id

Идентификатор скидки.

@name

Название скидки.

<description>

Описание скидки.

<price>

Элемент, описывающий отдельную цену в одной из валют.

<original>

Цена без учета скидок.

<actual>

Цена с учетом скидок.

<currencies>

Ветвь, описывающая цены в других валютах сайта.

<price>

Элемент, описывающий отдельную цену в одной из валют.

<original>

Цена без учета скидок.

<actual>

Цена с учетом скидок.

Вывод цены осуществляется по шаблону, указанному в параметре template. Вы можете не указывать этот параметр, тогда для вывода будет использован шаблон по умолчанию — default.tpl.

Используемые шаблоны

Макрос оперирует шаблонами, находящимися в каталоге /tpls/emarket/ и /tpls/emarket/currency/.

Используемые блоки шаблона, находящегося в каталоге /tpls/emarket/

price_block

Общий блок для вывода цен.

%price-original%

Цена без учета скидок.

%price-actual%

Цена с учетом скидок.

price_original

Блок для вывода цены без учета скидок (например: американский доллар — $).

%prefix%

Префикс для валюты.

%original%

Цена без учета скидок.

%suffix%

Суффикс для валюты (например: российский рубль — "руб.").

price_actual

Блок, отвечающий за вывод цены с учетом скидок.

%prefix%

Префикс для валюты (например: американский доллар — $).

%actual%

Цена с учетом скидок.

%suffix%

Суффикс для валюты (например: российский рубль — "руб.").

Используемые блоки шаблона, находящегося в каталоге /tpls/emarket/currency/

currency_prices_block

Блок для вывода списка цен в других валютах.

%items%

Список цен во всех доступных валютах.

currency_prices_item

Блок для формирования элемента списка цен в других валютах.

%name%

Название валюты.

%code%

Строковый идентификатор валюты в системе.

%rate%

Текущий курс валюты.

%nominal%

Номинал валюты.

%prefix%

Префикс для валюты (например: американский доллар — $).

%price-original%

Цена без учета скидок.

%suffix%

Суффикс для валюты (например: российский рубль — "руб.").

%price-actual%

Цена с учетом скидок.

Название

%emarket price()% — Возвращает стоимость товара.

Параметры: emarket price(elementId [, template = 'default', showAllCurrency = true])

elementId

Id товара.

template

Имя шаблона, по которому выводится цена. В XSLT-шаблонизаторе игнорируется, можно задать любое значение.

showAllCurrency

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

Описание

Макрос выводит цену для товара, указанного в параметре elementId. По умолчанию выводятся цены во всех валютах сайта. Если нужно осуществлять вывод только в предпочитаемой валюте для текущего пользователя, установите showAllCurrency равным "0".