Получение промежутка времени действия скидки или акции
Bitrix 16.5.11
Для получения промежутка времени действия скидки либо акции у товара, удобно воспользоваться функцией CCatalogDiscount::GetDiscountByProduct.
Например, нам нужно вывести в карточке товара дату до какого числа будет действовать скидка. Для этого настроим скидку примерно как на картинке:
После добавим код в файл result_modifier.php:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
$arDiscounts = CCatalogDiscount::GetDiscountByProduct( $arResult['ID'], // ID товара $USER->GetUserGroupArray(), // Укажем группу пользователя для проверки прав доступа к скиде "N", 1, // тип цены BASE SITE_ID ); $arResult['VD_DISCOUNT_PARAMS'] = $arDiscounts[0]; // Добавляем для торговы предложений if(count($arResult["OFFERS"]) > 0) { foreach ($arResult["OFFERS"] as $key => $value) { $arDiscounts = CCatalogDiscount::GetDiscountByProduct( $value['ID'], $USER->GetUserGroupArray(), "N", 1, // тип цены BASE SITE_ID ); $arResult["OFFERS"][$key]['VD_DISCOUNT_PARAMS'] = $arDiscounts[0]; } } |
После получим значения в шаблоне.
1 2 3 |
<? if ($arResult['VD_DISCOUNT_PARAMS']) {?> <div class="discount-period-date">Скидка до <?=$arResult['VD_DISCOUNT_PARAMS']['ACTIVE_TO']?></div> <? } ?> |