Skip to content
  1. Компоненты
  2. msProductRemains
  3. Сниппет getRemains

Сниппет getRemains

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

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

Параметры

НазваниеПо умолчаниюОписание
&idResource IDID товара
&colorЦвет товара
&sizeРазмер товара
&returndataВернуть число (data) или массив данных (json)

Варианты вызова

Для более правильного и точного подсчёта остатков, сниппет должен вызываться некэшированным.

Для получения общего количества остатков на странице товара:

modx
[[!getRemains]]

Для получения количества остатков определённой комбинации свойств:

modx
[[!getRemains?
  &id=[[+id]]
  &color=`color`
  &size=`size`
]]

Для записи вызова в плейсхолдер необходимо использовать стандартный фильтр MODX:

modx
[[!getRemains:toPlaceholder=`remains`?
  &id=[[+id]]
  &color=`color`
  &size=`size`
]]

Массив данных об остатках

При вызове сниппета следующим образом

modx
[[!getRemains? &return=`json`]]

в ответ будет получен массив данных об остатках товара, например, такой:

json
[{
  "id": 112,
  "options": {
    "color": "Красный",
    "size":"Малый"
  },
  "remains": 56
},
{
  "id": 113,
  "options": {
    "color": "Синий",
    "size": "Большой"
  },
  "remains": 0
},
{
  "id": 114,
  "options": {
    "color": "Синий",
    "size": "Малый"
  },
  "remains": 75
}]