Ответы пользователя по тегу PHP
  • Как работают ссылки в представленном коде?

    Если этот массив получен из CIBlockSection::GetList, попробуйте получить помимо DEPTH_LEVEL, еще LEFT_MARGIN и RIGHT_MARGIN. И по ветвям уже из массива можно будет построить дерево.
    Ответ написан
    Комментировать
  • Как получить минимальную и максимальную цену из всего каталога битрикс?

    Можно так сделать.
    // Получение основного типа цены
    $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"]],
            )
        );
    }
    Ответ написан
    Комментировать
  • Можно ли изменить обязательность заполнения полей в каталоге -> разделе Bitrix 1c?

    "Обязательность" полей можно убрать в настройка инфоблока, вкладка "Поля разделов". У поля название "обязательность" убрать нельзя.
    Ответ написан
    Комментировать