Здравствуйте. У торговых предложений существует цена = 0 (это означает что товара нет в наличии).
Задача: отображать в catalog.section и в catalog.item минимальную цену товара, без учета "нулевой" цены.
Цена 0 может быть у нескольких ТП.
Пробовал делать перебор цен ТП с сортировкой и отсевом нулевой цены таким кодом (это в catalog.item):
foreach ($item['OFFERS'] as $OfPrice) {
foreach ($OfPrice['ITEM_PRICES'] as $OffPrice)
$OffPriceList[] = $OffPrice['UNROUND_PRICE'];
}
sort($OffPriceList);
$minOffPrice = current($OffPriceList);
if ($minOffPrice == '0') {
$minOffPrice = next($OffPriceList);
}
unset($OffPriceList);
Все работает, но, естественно, у товаров с несколькими ТП=0, в списке отображается цена 0.
Если заменить if на цикл while - ошибка по time out.
Подскажите, как можно решить эту задачу? Возможно просто настройками в Торговом каталоге или еще где то, чтобы не писать эти переборы вообще?
Заранее благодарю!
Задача: отображать в catalog.section и в catalog.item минимальную цену товара, без учета "нулевой" цены.
Цена 0 может быть у нескольких ТП.
Пробовал делать перебор цен ТП с сортировкой и отсевом нулевой цены таким кодом (это в catalog.item):
foreach ($item['OFFERS'] as $OfPrice) {
foreach ($OfPrice['ITEM_PRICES'] as $OffPrice)
$OffPriceList[] = $OffPrice['UNROUND_PRICE'];
}
sort($OffPriceList);
$minOffPrice = current($OffPriceList);
if ($minOffPrice == '0') {
$minOffPrice = next($OffPriceList);
}
unset($OffPriceList);
Все работает, но, естественно, у товаров с несколькими ТП=0, в списке отображается цена 0.
Если заменить if на цикл while - ошибка по time out.
Подскажите, как можно решить эту задачу? Возможно просто настройками в Торговом каталоге или еще где то, чтобы не писать эти переборы вообще?
Заранее благодарю!