Вывести минимальную и максимальную цену в разделе каталога Битрикс.
Что бы вывести минимальную и максимальную цены в разделе каталога (до товаров например) вставляем:
Пояснения:
- С помощью CIBlockElement::GetList получили список элементов раздела с ID равным "$arResult['~ID']" (текущий раздел инфоблока)
- Отсортировали их по полю стоимости по возрастанию "CATALOG_PRICE_2" (ID нужного типа цен, в моем случае, 2)
- Создали массив $arPrices - который наполнили ценами всех товаров (по возрастанию соответственно).
- C помощью array_shift и array_pop - выдернули первый и последний элемент массива (таки минимальную и максимальную цену)
В переменных minPrice и maxPrice - минимальная и максимальная цена товаров текущего раздела инфоблока.
PS: Использован Fetch вместо GetNext и явно указано поле для получения, для скорости работы.
Что бы вывести минимальную и максимальную цены в разделе каталога (до товаров например) вставляем:
$resPrice = CIBlockElement::GetList( Array("CATALOG_PRICE_2" => "ASC"), Array("SECTION_ID"=>$arResult['~ID']), false, false, Array("CATALOG_GROUP_2") ); while($getPrices = $resPrice->Fetch()) { $arPrices[] = $getPrices['CATALOG_PRICE_2']; } $minPrice = array_shift($arPrices); $maxPrice = array_pop($arPrices); |
Пояснения:
- С помощью CIBlockElement::GetList получили список элементов раздела с ID равным "$arResult['~ID']" (текущий раздел инфоблока)
- Отсортировали их по полю стоимости по возрастанию "CATALOG_PRICE_2" (ID нужного типа цен, в моем случае, 2)
- Создали массив $arPrices - который наполнили ценами всех товаров (по возрастанию соответственно).
- C помощью array_shift и array_pop - выдернули первый и последний элемент массива (таки минимальную и максимальную цену)
В переменных minPrice и maxPrice - минимальная и максимальная цена товаров текущего раздела инфоблока.
PS: Использован Fetch вместо GetNext и явно указано поле для получения, для скорости работы.