Чтобы цены на сайте были всегда актуальными и изменялись автоматически при изменении цен в товарах, в разметке страницы используются ценовые константы.
Они располагаются в настройках каждого товара в следующем видею
Как использовать ценовые константы
- – так выглядит шаблон ценовой константы для редактора сувениров и полиграфии, где:
price – обязательный параметр, указывающий, что цена выводится за весь тираж;
url – обязательный параметр,являющийся адресным именем товара;
cUrl – обязательный параметр, являющийся адресным именем категории, в которой располагается товар;
q – необязательный параметр, указывающий количество товара, за которое будет выведена цена. Если параметр не указан, то выводится цена за первый тираж в настройках;
p – необязательный параметр, указывающий количество страниц, за которое будет выведена цена. Данный параметр актуален, только если используется механизм многостраничной продукции в настройках товара;
surface и zone – необязательные параметры, указывающие, что нужно передавать цену указанной зоны печати (zone) указанной поверхности (surface) товара. Важно отметить, что эти два параметра указываются вместе в следующей последовательности: surface, zone. По раздельности они не работают.
*Значения всех параметром, кроме url и cUrl,могут быть заданы только цифрами и указываются без кавычек после двоеточия «:».
- – используется параметр priceWithCustomWorks, который указывает на то, что цена продукта будет выведена с учётом опций, привязанных к товару. В опциях для выбора всегда выбирается позиция с наименьшей стоимостью. К примеру, если стоимость тиража 100 рублей, а минимальная стоимость позиции в привязанной опции 30 рублей, то будет выведена цена 130 рублей.
Важно учесть, что опции с типом расчёта «по размеру» не выводятся в ценовых константах.
- – используется параметр pricePerItem, который указывает на то, что будет выведена стоимость товара за одну штуку. Таким образом, если в настройках товара у Вас задан тираж 100, стоимость которого равна 300 рублей, то данный параметр выведет цену за одну штуку, то есть 300/100 = 3.
- – используется параметр priceString или pricePerItemString, который указывает на то, что цена продукта будет выведена с указанием валюты сайта.
Важно отметить, что в разных редакторах для использования доступны разные параметры в ценовых константах. Доступные параметры выведены в настройках каждого товара.
Пример использования
Товар – футблока, две поверхности печати (передняя сторона футболки, задняя сторона футболки), четыре зоны печати для каждой из поверхностей.
В основных настройках товара видны доступные параметры для ценовых констант по данному товару.
В поле «Тиражность» видно, что создано лишь одно правило, в котором указано минимальное количество – 1, а цена равна 300. Это говорит нам о том, что параметр q (количество) можно не указывать, так как настроено всего одно правило (оно единственное и будет браться по умолчанию).
Параметр p (страницы) также указывать не нужно, потому что механизм многостраничной продукции в данном случае не используется.
Цены указаны в настройках каждой зоны печати, поэтому для вывода цен понадобятся такие параметры, как surface и zone.
Обычно на сайте указываются минимальные цены для заказа товара. В данном примере так и сделаем.
В настройках товара настроено две поверхности, на каждой из которых создано по 4 зоны печати. Минимальный заказ может быть выполнен как печать с одной стороны футболки, поэтому минимальная стоимость печати равна 130 рублям.
Важно отметить, что стоимость самой футблоки указана через опции, поэтому в настройках товара мы её не видим. На сайте это выглядит так: http://demo.pixlpark.ru/printing/t-shirts/man-white/editor
Чтобы вывести минимальную цену за опцию, то можно использовать параметр priceWithCustomWorks.
Для вывода стоимости за третью зону печати первой поверхности (в нашем случае без разницы – первой или второй поверхности, так как цены зон печатей на первой и второй поверхностях совпадают) данного товара ценовая константа будет выглядеть следующим образом:
[
$
price(id:64273, surface:1, zone:3)
$]
Для вывода цены с учётом опций можно комбинировать различные параметры. Например, сделаем следующую конструкцию:
[
$
priceWithCustomWorksString(id:64273, surface:1, zone:3)
$]
В этом случае цена будет выведена за третью зону печати в первой поверхности с учётом минимальной стоимости опций.
В таком виде ценовая константа вставляется в любое нужное Вам место в разметке страницы.