Skip to content
  1. Компоненты
  2. msDiscount
  3. Сниппеты
  4. msdGetDiscount

msdGetDiscount

Сниппет для вывода скидки и\или срока окончания акции товара.

Может вызываться как prepareSnippet в msProducts, и отдельно на странице. В первом случае результатом работы будет добавление двух параметров в массив товара: [[+sale_discount]] (размер скидки) и [[+remains]] (количество секунд до окончания акции). А во втором, он просто выведет чанк с этими плейсхолдерами.

Параметры

НазваниеПо умолчаниюОписание
&idId товара для вывода скидки и времени действия акции.
&saleСписок акций для вывода, через запятую. Если пусто - фильтрация по акциям отключена.
&tpltpl.msProduct.discountЧанк оформления для вывода результата работы сниппета.
&frontend_css[[+assetsUrl]]css/web/main.cssФайл с css стилями для подключения на фронтенде.
&frontend_js[[+assetsUrl]]js/web/default.jsФайл с javascript для подключения на фронтенде.

Примеры

Сниппет сам определяет режим работы, в зависимости от параметров вызова

Обычный вызов на странице товара:

modx
[[!msdGetDiscount]]

Вызов в другом месте, с указанием параметров:

modx
[[!msdGetDiscount?
  &id=`15`
  &sale=`1,2,3,4,5`
]]

Вызов как сниппет подготовки в msProducts:

modx
<link rel="stylesheet" href="[[++assets_url]]components/msdiscount/css/web/main.css" type="text/css" />
[[!msProducts?
  &parents=`0`
  &prepareSnippet=`msdGetDiscount`
  &tpl=`@INLINE
    <div class="row ms2_product">
      <a href="{{+link}}">{{+pagetitle}}</a>
      <span class="price">{{+price}} {{%ms2_frontend_currency}}{{+remains}}</span>
    </div>
    <!--minishop2_remains -{{+sale_discount}} — <span class="msd_remains">{{+remains}}</span>-->
    <!--minishop2_!remains -{{+sale_discount}}-->
  `
]]
<script type="text/javascript" src="[[++assets_url]]components/msdiscount/js/web/default.js"></script>

Будут выведены все товары со скидкой и временем до окончания акции (если есть). Если нужно вывести только товары по акциям, лучше и проще использовать msdBuyNow.