Задать вопрос
@lynnikvadim

Как получить минимальную и максимальную цену из всего каталога битрикс?

Как получить минимальную и максимальную цену из всего каталога битрикс ?
  • Вопрос задан
  • 3396 просмотров
Подписаться 2 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 3
@isa3v
Ответ написан
Комментировать
Можно так сделать.
// Получение основного типа цены
$arCatalogGroup = \Bitrix\Catalog\GroupTable::getList(array(
    'filter' => array("BASE" => "Y")
))->fetch();

if (isset($arCatalogGroup["ID"]) && !empty($arCatalogGroup["ID"])) {
    // Получение товара с минимальной ценой
    $arMinPriceProduct = CIBlockElement::GetList(
        Array('CATALOG_PRICE_'.$arCatalogGroup["ID"] => 'ASC'),
        Array(
            'IBLOCK_ID' => $arParams["IBLOCK_ID"],
            'SECTION_ID' => $arResult["VARIABLES"]["SECTION_ID"]
        ),
        false,
        Array('nTopCount' => 1),
        Array('ID', 'CATALOG_PRICE_'.$arCatalogGroup["ID"])
    )->Fetch();

    // Получение товара с максимальной ценой
    $arMaxPriceProduct = CIBlockElement::GetList(
        Array('CATALOG_PRICE_'.$arCatalogGroup["ID"] => 'DESC'),
        Array(
            'IBLOCK_ID' => $arParams["IBLOCK_ID"],
            'SECTION_ID' => $arResult["VARIABLES"]["SECTION_ID"]
        ),
        false,
        Array('nTopCount' => 1),
        Array('ID', 'CATALOG_PRICE_'.$arCatalogGroup["ID"])
    )->Fetch();


    $arSectionPriceRange = array(
        "MIN" => array(
            "PRICE" => $arMinPriceProduct["CATALOG_PRICE_".$arCatalogGroup["ID"]],
            "CURRENCY" => $arMinPriceProduct["CATALOG_CURRENCY_".$arCatalogGroup["ID"]],
        ),
        "MAX" => array(
            "PRICE" => $arMaxPriceProduct["CATALOG_PRICE_".$arCatalogGroup["ID"]],
            "CURRENCY" => $arMaxPriceProduct["CATALOG_CURRENCY_".$arCatalogGroup["ID"]],
        )
    );
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы