Делаю запрос нескольких секций фильтруя по ID, передавая массив ID разделов
Но в итоге получаю только одну секцию (в массиве $arResult['PROPERTIES']['PRICELIST']['VALUE'] в данном случае 3 значения). Решил переписать с помощью фильтра со сложной логикой те.
Но все равно получаю только 1 раздел (идущий первым в свойстве $arResult['PROPERTIES']['PRICELIST']['VALUE'])
Неужели каждый раздел придется запрашивать отдельным запросом к базе или я где-то допустил ошибку (хотя элементы подобным образом нормально фильтруются)?
| Код |
|---|
$priceSectionsIDs = $arResult['PROPERTIES']['PRICELIST']['VALUE']; //массив значений множественного свойства привязки к разделам [id1, id2, id3 ...] $sect_listDB = CIBlockSection::GetList( [ 'SORT' => 'ASC' ], [ 'IBLOCK_ID' => 14, 'ID' => $priceSectionsIDs //Фильтрация по ID ], false, false, [ 'IBLOCK_ID', 'ID', 'NAME' ] |
Но в итоге получаю только одну секцию (в массиве $arResult['PROPERTIES']['PRICELIST']['VALUE'] в данном случае 3 значения). Решил переписать с помощью фильтра со сложной логикой те.
| Код |
|---|
$sectionIdFilter = [
'LOGIC' => 'OR',
];
foreach ($priceSectionsIDs as $keySect => $sectID) {
$sectionIdFilter[] = [
'ID' => (int)$sectID
];
}
// те по итогу массив выглядит так
$sectionIdFilter = [
'LOGIC' => 'OR',
array(
'ID' => #первый id#,
),
array(
'ID' => #второй id#,
),
array(
'ID' => #третий id#,
),
...
];
|
Но все равно получаю только 1 раздел (идущий первым в свойстве $arResult['PROPERTIES']['PRICELIST']['VALUE'])
Неужели каждый раздел придется запрашивать отдельным запросом к базе или я где-то допустил ошибку (хотя элементы подобным образом нормально фильтруются)?