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