Сиюминутные скидки — своеобразный бонус для терпеливых и внимательных посетителей. Суть в том, что если посетитель в течение 30 секунд не покидает страницу просмотра товара, появляется всплывающее сообщение, в котором указано что посетитель может купить этот товар со скидкой, если не закроет всплывающее окно, а нажмёт на кнопку покупки.
В сиюминутные скидки можно добавлять как отдельный товар, так и группу товаров. Для начала нужно создать скидку, у которой выбрана опция «Скидка должна быть активирована для отдельных товаров (сиюминутные предложения)».
«Активировать» указанную скидку для конкретного товара:
$netshop->promotion->activate_item_discount($discount_id, nc_netshop_item $item)
«Деактивировать» скидку:
$netshop->promotion->deactivate_item_discount($discount_id, nc_netshop_item $item)
«Деактивировать» все:
$netshop->promotion->deactivate_all_item_discounts()
Проверить, активирована ли скидка:
$netshop->promotion->is_item_discount_activated($discount_id, nc_netshop_item $item)
Информация хранится в текущей сессии.
Список «сиюминутных» скидок, которые могли бы быть применены к товару:
$netshop->promotion->get_activated_item_discounts_for_item(nc_netshop_item $item)
($item – объект nc_netshop_item) Возвращает объект nc_netshop_promotion_discount_item_collection.
Чтобы получить сумму для сиюминутных скидок, которые ещё не активированы, $check_conditions_only должен быть true.
Коллекция реализует Iterator, так что можно перебирать через foreach:
foreach ($collection as $item_discount) { // $item_discount — объект nc_netshop_promotion_item_discount echo $item_discount->get('name'); // название; аналогично для других свойств: description etc. echo $item_discount->get_full_formatted_amount(); // отформатированный размер скидки (с наименованием валюты или знаком «%») }