Как вывести в рассылке итоговую сумму корзины?
Задача: Хотим вывести итоговую сумму корзины в рассылке.
В данном случае “корзина” – это название списка, может быть другим.
Условие. В параметрах вывода товаров из списка нет значения для вывода итоговой суммы, поэтому её нужно получить отдельно. Сначала создадим переменную и сделаем её равную 0. Дальше будем прибавлять к ней цены отдельных товаров. Для этого есть специальная функция – set, которая позволяет создавать переменные и совершать с ними арифметические операции. В результате получим сумму всех продуктов из списка.
Решение.
-
Задаем переменную и делаем её равной 0:
@{set Total = 0}Total- название переменной, может быть любым. -
Создаем цикл для вывода продуктов из корзины:
@{for item in Recipient.GetProductList("Korzina").FilterBySegment("IzvestnyeTovaryVNalichie").AvailableForRecipient.Take(20)} -
Считаем сумму цен продуктов в корзине:
@{set Total = Total + item.Product.Price * item.count}item.Product.Price- берем цену продукта из списка.item.count- берем количество товара из списка.
Таким образом, цикл проходится до каждому продукту в списке, подходящему под условия сегмента, и прибавляет его цену к значению счётчика.
-
Закрываем цикл:
@{end for} -
Выводим конечное значение переменной:
${Total}
Верстка:
@{set Total = 0}
@{for item in Recipient.GetProductList("Korzina").FilterBySegment("IzvestnyeTovaryVNalichie").AvailableForRecipient.Take(20)}
@{set Total = Total + item.Product.Price * item.count}
@{end for}
${Total}