Функцию можно добавить в init.php и получить минимальную цену любого товара.
CModule::IncludeModule('catalog'); function GetOfferMinPrice($IBLOCK_ID,$item_id){ // получаем все торг. предложения $arSKU = CCatalogSKU::getOffersList($item_id, $IBLOCK_ID, array('ACTIVE' => 'Y'), array(), array()); // Если у товара есть торговые предложения if(count($arSKU)>0){ $arr_price = array(); foreach($arSKU as $item_s) { foreach($item_s as $item_sku) { // получаем цену, где 1 - тип цены $ret_sku = GetCatalogProductPrice($item_sku['ID'], 1); if ($ret_sku['PRICE']){ $arr_price[] = ceil($ret_sku['PRICE']); } } } $itog_price_sku = min($arr_price); } else { $ret_sku = GetCatalogProductPrice($item_id, 1); if ($ret_sku['PRICE']){ $itog_price_sku = ceil($ret_sku['PRICE']); } } return $itog_price_sku; } |
где, $IBLOCK_ID — ид инфоблока ,$item_id — ид товара с торговыми предложениями, если тп нет — вернет цену товара.
Пример вызова:
GetOfferMinPrice(2,10); |
Об авторе