FCIBlockSection::GetMixedList

Описание

Метод статический: Возвращает объединённый список разделов и элементов инфоблока в одном результирующем наборе. Переопределяет базовый метод CIBlockSection::GetMixedList и расширяет его поддержку мультиязычности — все названия, описания и связанные данные возвращаются на указанном языке (если переводы существуют).

Метод используется при построении административных интерфейсов, комбинирующих разделы и элементы в единой структуре (например, дерево каталога).

Сигнатура метода

Code Copy code Code copied!
1
2
3
4
5
6
7
CIBlockResult
FCIBlockSection::GetMixedList(
 array $arOrder = ["SORT" => "ASC"],
 array $arFilter = [],
 bool $bIncCnt = false,
 array $arSelectedFields = []
);

Параметры вызова

Параметр Описание С версии
arOrder Массив параметров сортировки (по умолчанию ["SORT" => "ASC"]). 2.5.750
arFilter Массив условий фильтрации. Поддерживает смешанный фильтр как по разделам, так и по элементам. 2.5.750
bIncCnt Флаг подсчёта количества элементов в разделах. Используется при выборке разделов. 2.5.750
arSelectedFields Массив полей, которые необходимо выбрать. Если не задан — по умолчанию выбираются все поля (*). 2.5.750

Возвращаемое значение

Метод возвращает объект CIBlockResult, содержащий как разделы, так и элементы инфоблока, объединённые в один массив. Каждая запись содержит ключ TYPE, в котором указано значение SECTION или ELEMENT, позволяющее отличить тип данных.

Пример

Code Copy code Code copied!
1
2
3
4
5
6
7
8
9
10
// Получаем список разделов и элементов инфоблока с сортировкой по имени
$arOrder = ['NAME' => 'ASC'];
$arFilter = ['IBLOCK_ID' => 2, 'ACTIVE' => 'Y'];
$arSelect = ['ID', 'NAME'];

$rsItems = FCIBlockSection::GetMixedList($arOrder, $arFilter, false, $arSelect);

while ($item = $rsItems->Fetch()) {
    echo "[" . $item['TYPE'] . "] " . $item['NAME'] . "<br>";
}

Предупреждение: Несмотря на публичный статус, метод был изначально разработан для внутренних задач административных интерфейсов Bitrix. Использование в пользовательской части проекта допускается, но рекомендуется с осторожностью. В мультиязычных модулях метод безопасен для чтения данных.

Примечание: Метод автоматически нормализует фильтр и определяет, необходимо ли загружать разделы, элементы или оба типа одновременно. Все полученные записи можно обрабатывать как единый список, упрощая построение иерархических структур.

Описание метода CIBlockSection::GetMixedList в официальной документации Битрикс

Количество показов: 21
Дата изменения: 23.06.2025 14:44:22