<?
$arSelect = Array("ID", "IBLOCK_ID", "IBLOCK_SECTION_ID", "PREVIEW_TEXT", "NAME", "DATE_ACTIVE_FROM","PROPERTY_*");//IBLOCK_ID и ID обязательно должны быть указаны, см. описание arSelectFields выше
$arFilter = Array("IBLOCK_ID"=>38, "ACTIVE_DATE"=>"Y", "ACTIVE"=>"Y");
$res = CIBlockElement::GetList(Array(), $arFilter, false, Array("nPageSize"=>50), $arSelect);
while($ob = $res->GetNextElement()){
$arFields = $ob->GetFields();
echo "Номер раздела ".$arFields[IBLOCK_SECTION_ID]."</br>Вопрос: ".$arFields[NAME]."<br>Ответ: ".$arFields[PREVIEW_TEXT]."<br><br>";
$arProps = $ob->GetProperties();
//print_r($arProps);
}
?>
Номер раздела 2310
Вопрос: Можно ли вернуть заказ?
Ответ: Да, в течение 14 дней.
Номер раздела 2312
Вопрос: Как часто?
Ответ: Очень часто
Номер раздела 2312
Вопрос: Какие гарантии?
Ответ: 5 лет
Номер раздела 2310
Вопрос: Можно ли вернуть заказ?
Ответ: Да, в течение 14 дней.
Номер раздела 2312
Вопрос: Как часто?
Ответ: Очень часто
<!-- вырезали дубль 2312 -->
Вопрос: Какие гарантии?
Ответ: 5 лет
$arFilter = Array(
'IBLOCK_ID' => $IBLOCK_ID,
'GLOBAL_ACTIVE' => 'Y',
);
$arSelect = Array(
'ID',
'NAME'
);
$db_list = CIBlockSection::GetList (Array(), $arFilter, false, $arSelect, false);
while ($ar_result = $db_list->GetNext ())
{
$arSections[]= array('ID'=> $ar_result['ID'], 'NAME'=> $ar_result['NAME']);
}
foreach ($arSections as $index => $arSection)
{
$arSelect = Array(
"ID",
"IBLOCK_ID",
"IBLOCK_SECTION_ID",
"PREVIEW_TEXT",
"NAME",
"DATE_ACTIVE_FROM",
"PROPERTY_*"
);
$arFilter = Array(
"IBLOCK_ID" => 38,
"ACTIVE_DATE" => "Y",
"ACTIVE" => "Y",
'IBLOCK_SECTION_ID' => $arSection['ID']
);
$res = CIBlockElement::GetList (Array(), $arFilter, false, Array(), $arSelect);
while ($ob = $res->GetNextElement ())
{
$arItem = $ob->GetFields ();
$arItem['PROPS'] = $ob->GetProperties ();
$arItems[] = $arItem;
}
$arFullSection = $arSection;
$arFullSection['ITEMS'] = $arItems;
$arFullSection[] = $arFullSection;
unset($arItem,$arItems,$arFullSection);
}
Массив полей для группировки элемента. Если поля указаны, то выборка по ним группируется (при этом параметр arSelectFields будет проигнорирован), а в результат добавляется поле CNT - количество сгруппированных элементов. Если указать в качестве arGroupBy пустой массив, то метод вернет количество элементов CNT по фильтру. Группировать можно по полям элемента, а также по значениям его свойств. Для этого в качестве одного из полей группировки необходимо указать PROPERTY_, где PROPERTY_CODE - ID или символьный код свойства.
Необязательное. По умолчанию false - записи не группируются.