@urajo

Как получить свойства элемента инфоблока?

Вывожу инфоблок и его элементы так. У элементов есть дополнительные свойства, как их получить в данном коде?
$arOrder = Array("SORT"=>"ASC");
	$arFilter = Array(
	"IBLOCK_SECTION_ID" => $arResult["ID"],
	"SORT_BY1" => $arParams["SORT_BY1"],
    "SORT_ORDER1" => $arParams["SORT_ORDER1"],
    "SORT_BY2" => $arParams["SORT_BY2"],
    "SORT_ORDER2" => $arParams["SORT_ORDER2"],
	'GLOBAL_ACTIVE'=>'Y',
	);
	$obElement = CIBlockElement::GetList($arOrder, $arFilter, false, false, Array());
	while($ar_fields = $obElement->GetNext())
	{
		var_dump($ar_fields['NAME']);
	}
  • Вопрос задан
  • 803 просмотра
Пригласить эксперта
Ответы на вопрос 2
пятый параметр в CIBlockElement::GetList() посмотрите в документации, там есть примеры.

замечания:
  1. $obElement - это не obElement, то есть не "элемент с типом 'объект'". Там экземпляр класса CIBlockResult , его в основном обозначают как $res.
  2. у Вас какой-то странный фильтр, в него зачем-то запихана сортировка. Насколько помню внутреннее устройство CIBlockElement::GetList(), всё это игнорируется как мусор. Есть же $arOrder, используйте его.
  3. моё имхо: хоть венгерская нотация и принята в Битриксе, но тянется это с глубокой древности, применяется ошибочно и поэтому смысла не имеет.
Ответ написан
Комментировать
@anton99zel Куратор тега 1С-Битрикс
29а класс средней школы №7
$arFilter = Array(
  "ID" => УКАЖИ, 
  "IBLOCK_ID"=>УКАЖИ, 
  "IBLOCK_SECTION_ID" => $arResult["ID"],
  );
$arSelect = Array("ID", "IBLOCK_ID", "NAME", "DATE_ACTIVE_FROM","PROPERTY_CODE");
$res = CIBlockElement::GetList(Array("SORT"=>"ASC"), $arFilter, false, Array("nPageSize"=>50), $arSelect);
while($ob = $res->GetNextElement()){ 
 $arFields = $ob->GetFields();  
print_r($arFields);
 $arProps = $ob->GetProperties();
print_r($arProps);
}

PROPERTY_CODE, например PROPERTY_COLOR
https://dev.1c-bitrix.ru/api_help/iblock/classes/c...
Сортировку переделай сам
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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