Битрикс. Работа с инфоблоками в старом ядре

20.12.2018

Теги: CMSWeb-разработкаБитриксИнфоблокРазделИнфоблокаСтароеЯдроЭлементИнфоблока

Узелки на память:

  1. Получение корневых разделов инфоблока
  2. Выборка разделов инфоблока и получение SEO-данных
  3. Выборка разделов инфоблока с построением иерархии
  4. Получение списка элементов инфоблока
  5. Выборка элементов инфоблока вместе с пользовательскими свойствами
  6. Выборка пользовательских свойств элементов инфоблока

1. Получение корневых разделов инфоблока

// какие поля разделов инфоблока выбираем
$arSelect = array(
    'ID',
    'NAME',
    'DESCRIPTION',
    'DEPTH_LEVEL'
);
// условия выборки разделов инфоблока
$arFilter = array(
    'IBLOCK_ID' => 5,        // идентификатор инфоблока
    'IBLOCK_ACTIVE' => 'Y',  // инфоблок должен быть активен
    'ACTIVE' => 'Y',         // только активные разделы
    'DEPTH_LEVEL' => 1       // только корневые разделы
);
// сортировка разделов
$arSort = array(
    'SORT' => 'ASC'
);
// выполняем запрос к базе данных
$dbResult = CIBlockSection::GetList(
    $arSort,
    $arFilter,
    false,
    $arSelect
);

$arSections = array();
while ($arSection = $dbResult->GetNext()) {
    $arSections[] = $arSection;
}

print_r($arSections);
SELECT DISTINCT
    `BS`.`ID` AS `ID`,
    `BS`.`NAME` AS `NAME`,
    `BS`.`DESCRIPTION` AS `DESCRIPTION`,
    `BS`.`DEPTH_LEVEL` AS `DEPTH_LEVEL`,
    `BS`.`DESCRIPTION_TYPE` AS `DESCRIPTION_TYPE`,
    `BS`.`SORT` AS `SORT`
FROM
    `b_iblock_section` `BS` INNER JOIN `b_iblock` `B`
    ON `BS`.`IBLOCK_ID` = `B`.`ID`
WHERE
    1 = 1
    AND `BS`.`IBLOCK_ID` = '5'
    AND `BS`.`ACTIVE` = 'Y' 
    AND `BS`.`DEPTH_LEVEL` = '1'
    AND `B`.`ID` = '5' 
    AND `B`.`ACTIVE` = 'Y'
ORDER BY
    `BS`.`SORT` ASC
Array
(
    [0] => Array
        (
            [ID] => 16
            [NAME] => Породы кошек
            [DESCRIPTION] => Быть может, кошка и не лучший друг человека...
            [DEPTH_LEVEL] => 1
            [DESCRIPTION_TYPE] => html
            [SORT] => 500
        )
    [1] => Array
        (
            [ID] => 19
            [NAME] => Породы собак
            [DESCRIPTION] => Более 20 тысяч лет назад первобытный человек...
            [DEPTH_LEVEL] => 1
            [DESCRIPTION_TYPE] => html
            [SORT] => 500
        )
)

2. Выборка разделов инфоблока и получение SEO-данных

// какие поля разделов инфоблока выбираем
$arSelect = array(
    'ID',
    'NAME',
    'PICTURE',
    'DESCRIPTION',
    'DESCRIPTION_TYPE',
    'SECTION_PAGE_URL',
    'DEPTH_LEVEL'
);
// условия выборки разделов инфоблока
$arFilter = array(
    'IBLOCK_ID' => 5,        // идентификатор инфоблока
    'IBLOCK_ACTIVE' => 'Y',  // инфоблок должен быть активен
    'ACTIVE' => 'Y',         // только активные разделы
    'GLOBAL_ACTIVE' => 'Y',  // учитывать активность родителей
);
// сортировка разделов для построения дерева
$arSort = array(
    'LEFT_MARGIN' => 'ASC'
);
// выполняем запрос к базе данных
$dbResult = CIBlockSection::GetList(
    $arSort,
    $arFilter,
    false,
    $arSelect
);

$arSections = array();
while ($arSection = $dbResult->GetNext()) {
    if (0 < $arSection['PICTURE']) { // маленькая картинка текущего раздела
        $arSection['PREVIEW_PICTURE'] = CFile::GetFileArray($arSection['PICTURE']);
    } else {
        $arSection['PREVIEW_PICTURE'] = false;
    }
    unset($arSection['PICTURE']);

    // получаем SEO-свойства очередного раздела
    $ipropValues = new \Bitrix\Iblock\InheritedProperty\SectionValues(
        5,                // идентификатор инфоблока
        $arSection['ID']  // идентификатор текущего раздела
    );
    $arSection['IPROPERTY_VALUES'] = $ipropValues->getValues();

    if ($arSection['PREVIEW_PICTURE']) {
        $arSection['PREVIEW_PICTURE']['ALT'] =
            $arSection['IPROPERTY_VALUES']['SECTION_PICTURE_FILE_ALT'];
        if ($arSection['PREVIEW_PICTURE']['ALT'] == '') {
            $arSection['PREVIEW_PICTURE']['ALT'] = $arSection['NAME'];
        }
        $arSection['PREVIEW_PICTURE']['TITLE'] =
            $arSection['IPROPERTY_VALUES']['[SECTION_PICTURE_FILE_TITLE'];
        if ($arSection['PREVIEW_PICTURE']['TITLE'] == '') {
            $arSection['PREVIEW_PICTURE']['TITLE'] = $arSection['NAME'];
        }
    }

    $arSections[] = $arSection;
}

print_r($arSections);

Выбираем элементы инфоблока, в данном случае их будет шесть:

SELECT DISTINCT
    `BS`.`ID` AS `ID`,
    `BS`.`NAME` AS `NAME`,
    `BS`.`PICTURE` AS `PICTURE`,
    `BS`.`DESCRIPTION` AS `DESCRIPTION`,
    `BS`.`DESCRIPTION_TYPE` AS `DESCRIPTION_TYPE`,
    `B`.`SECTION_PAGE_URL` AS `SECTION_PAGE_URL`,
    `BS`.`DEPTH_LEVEL` AS `DEPTH_LEVEL`,
    `BS`.`CODE` AS `CODE`,
    `BS`.`XML_ID` AS `EXTERNAL_ID`,
    `B`.`IBLOCK_TYPE_ID` AS `IBLOCK_TYPE_ID`,
    `BS`.`IBLOCK_ID` AS `IBLOCK_ID`,
    `B`.`CODE` AS `IBLOCK_CODE`,
    `B`.`XML_ID` AS `IBLOCK_EXTERNAL_ID`,
    `BS`.`GLOBAL_ACTIVE` AS `GLOBAL_ACTIVE`,
    `BS`.`LEFT_MARGIN` AS `LEFT_MARGIN`
FROM
    `b_iblock_section` `BS` INNER JOIN `b_iblock` `B`
    ON `BS`.`IBLOCK_ID` = `B`.`ID`
WHERE
    1 = 1
    AND `BS`.`IBLOCK_ID` = '5'
    AND `BS`.`ACTIVE` = 'Y'
    AND `BS`.`GLOBAL_ACTIVE` = 'Y'
    AND `B`.`ID` = '5'
    AND `B`.`ACTIVE` = 'Y'
ORDER BY
    `BS`.`LEFT_MARGIN` ASC 

Для каждого раздела получаем SEO-данные:

SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (16)
SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (17)
SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (18)
SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (19)
SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (20)
SELECT
    `P`.`ID`,
    `P`.`CODE`,
    `P`.`TEMPLATE`,
    `P`.`ENTITY_TYPE`,
    `P`.`ENTITY_ID`,
    `IP`.`VALUE`,
    `IP`.`SECTION_ID`
FROM
    `b_iblock_section_iprop` `IP` INNER JOIN `b_iblock_iproperty` `P`
    ON `P`.`ID` = `IP`.`IPROP_ID`
WHERE
    `IP`.`IBLOCK_ID` = 5
    AND `IP`.`SECTION_ID` IN (21)
Array
(
    [0] => Array
        (
            [ID] => 16
            [NAME] => Породы кошек
            [DESCRIPTION] => Быть может, кошка и не лучший друг человека... 
            [DESCRIPTION_TYPE] => html
            [SECTION_PAGE_URL] => /articles/section/code/porody-koshek/
            [DEPTH_LEVEL] => 1
            [CODE] => porody-koshek
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 1
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 945
                    [MODULE_ID] => iblock
                    [HEIGHT] => 200
                    [WIDTH] => 200
                    [FILE_SIZE] => 21194
                    [CONTENT_TYPE] => image/jpeg
                    [SRC] => /upload/iblock/c16/c16acb4b686640c521df122f575acdb9.jpg
                    [ALT] => Породы кошек. Статьи о домашних животных
                    [TITLE] => Породы кошек
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => породы кошек статьи о домашних питомцах, советы по содержанию и уходу...
                    [SECTION_META_DESCRIPTION] => Породы кошек. Статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_TITLE] => Породы кошек. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Породы кошек. Статьи о домашних животных. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Породы кошек. Статьи о домашних животных. Статьи о домашних...
                    [ELEMENT_META_KEYWORDS] => породы кошек статьи о домашних животных статьи о домашних питомцах...
                    [SECTION_PAGE_TITLE] => Породы кошек
                    [ELEMENT_PAGE_TITLE] => Породы кошек
                    [SECTION_PICTURE_FILE_ALT] => Породы кошек. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Породы кошек. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Породы кошек. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Породы кошек. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Породы кошек. Статьи о домашних животных. Статьи о...
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Породы кошек. Статьи о домашних животных. Статьи о...
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Породы кошек. Статьи о домашних животных. Статьи о...
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Породы кошек. Статьи о домашних животных. Статьи о...
                )
        )
    [1] => Array
        (
            [ID] => 17
            [NAME] => Длинношерстные
            [DESCRIPTION] => Длинношерстные кошки – настоящие красавицы, которые не оставят равнодушными любителей...
            [DESCRIPTION_TYPE] => text
            [SECTION_PAGE_URL] => /articles/section/code/dlinnosherstnye/
            [DEPTH_LEVEL] => 2
            [CODE] => dlinnosherstnye
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 2
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 984
                    [MODULE_ID] => iblock
                    [HEIGHT] => 700
                    [WIDTH] => 700
                    [FILE_SIZE] => 193845
                    [CONTENT_TYPE] => image/jpeg 
                    [SRC] => /upload/iblock/317/317346676253ea0776365b83b83c7dba.jpg
                    [ALT] => Длинношерстные. Статьи о домашних животных
                    [TITLE] => Длинношерстные
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => длинношерстные статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_DESCRIPTION] => Длинношерстные. Статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_TITLE] => Длинношерстные. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Длинношерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Длинношерстные. Породы кошек. Статьи о домашних питомцах, советы...
                    [ELEMENT_META_KEYWORDS] => длинношерстные породы кошек статьи о домашних питомцах, советы по...
                    [SECTION_PAGE_TITLE] => Длинношерстные
                    [ELEMENT_PAGE_TITLE] => Длинношерстные
                    [SECTION_PICTURE_FILE_ALT] => Длинношерстные. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Длинношерстные. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Длинношерстные. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Длинношерстные. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Длинношерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Длинношерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Длинношерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Длинношерстные. Породы кошек. Статьи о домашних животных
                )
        )
    [2] => Array
        (
            [ID] => 18
            [NAME] => Короткошерстные
            [DESCRIPTION] => Короткошёрстные кошки очень полюбились владельцам квартир, так как они не требуют...
            [DESCRIPTION_TYPE] => text
            [SECTION_PAGE_URL] => /articles/section/code/korotkosherstnye/
            [DEPTH_LEVEL] => 2
            [CODE] => korotkosherstnye
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 4
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 983
                    [MODULE_ID] => iblock
                    [HEIGHT] => 700
                    [WIDTH] => 700
                    [FILE_SIZE] => 71596
                    [CONTENT_TYPE] => image/jpeg 
                    [SRC] => /upload/iblock/17b/17ba9590bb537f17a9eb8a5edb912819.jpg
                    [ALT] => Короткошерстные. Статьи о домашних животных
                    [TITLE] => Короткошерстные
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => короткошерстные статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_DESCRIPTION] => Короткошерстные. Статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_TITLE] => Короткошерстные. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Короткошерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Короткошерстные. Породы кошек. Статьи о домашних питомцах, советы...
                    [ELEMENT_META_KEYWORDS] => короткошерстные породы кошек статьи о домашних питомцах, советы по...
                    [SECTION_PAGE_TITLE] => Короткошерстные
                    [ELEMENT_PAGE_TITLE] => Короткошерстные
                    [SECTION_PICTURE_FILE_ALT] => Короткошерстные. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Короткошерстные. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Короткошерстные. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Короткошерстные. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Короткошерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Короткошерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Короткошерстные. Породы кошек. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Короткошерстные. Породы кошек. Статьи о домашних животных
                )
        )
    [3] => Array
        (
            [ID] => 19
            [NAME] => Породы собак
            [DESCRIPTION] => Более 20 тысяч лет назад первобытный человек привел в свое жилище совершенно дикого...
            [DESCRIPTION_TYPE] => html
            [SECTION_PAGE_URL] => /articles/section/code/porody-sobak/
            [DEPTH_LEVEL] => 1
            [CODE] => porody-sobak
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 7
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 951
                    [MODULE_ID] => iblock
                    [HEIGHT] => 200
                    [WIDTH] => 200
                    [FILE_SIZE] => 20142
                    [CONTENT_TYPE] => image/jpeg
                    [SRC] => /upload/iblock/54b/54b6016bcfdda68acb57b3f7e54a1b73.jpg
                    [ALT] => Породы собак. Статьи о домашних животных
                    [TITLE] => Породы собак
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => породы собак статьи о домашних питомцах, советы по содержанию и уходу...
                    [SECTION_META_DESCRIPTION] => Породы собак. Статьи о домашних питомцах, советы по содержанию и...
                    [SECTION_META_TITLE] => Породы собак. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Породы собак. Статьи о домашних животных. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Породы собак. Статьи о домашних животных. Статьи о домашних питомцах...
                    [ELEMENT_META_KEYWORDS] => породы собак статьи о домашних животных статьи о домашних питомцах...
                    [SECTION_PAGE_TITLE] => Породы собак
                    [ELEMENT_PAGE_TITLE] => Породы собак
                    [SECTION_PICTURE_FILE_ALT] => Породы собак. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Породы собак. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Породы собак. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Породы собак. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Породы собак. Статьи о домашних животных. Статьи о домашних...
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Породы собак. Статьи о домашних животных. Статьи о домашних...
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Породы собак. Статьи о домашних животных. Статьи о домашних...
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Породы собак. Статьи о домашних животных. Статьи о домашних...
                )
        )
    [4] => Array
        (
            [ID] => 20
            [NAME] => Декоративные породы
            [DESCRIPTION] => Декоративные собаки — собирательное определение пород собак, не предназначенных для...
            [DESCRIPTION_TYPE] => html
            [SECTION_PAGE_URL] => /articles/section/code/dekorativnye-porody/
            [DEPTH_LEVEL] => 2
            [CODE] => dekorativnye-porody
            [EXTERNAL_ID] => 31
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 8
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 953
                    [MODULE_ID] => iblock
                    [HEIGHT] => 200
                    [WIDTH] => 200
                    [FILE_SIZE] => 25689
                    [CONTENT_TYPE] => image/jpeg
                    [SRC] => /upload/iblock/ffa/ffa1f34cc799b4bcc86381ecd06e332f.jpg
                    [ALT] => Декоративные породы. Статьи о домашних животных
                    [TITLE] => Декоративные породы
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => декоративные породы статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_DESCRIPTION] => Декоративные породы. Статьи о домашних питомцах, советы по...
                    [SECTION_META_TITLE] => Декоративные породы. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Декоративные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Декоративные породы. Породы собак. Статьи о домашних питомцах...
                    [ELEMENT_META_KEYWORDS] => декоративные породы породы собак статьи о домашних питомцах, советы...
                    [SECTION_PAGE_TITLE] => Декоративные породы
                    [ELEMENT_PAGE_TITLE] => Декоративные породы
                    [SECTION_PICTURE_FILE_ALT] => Декоративные породы. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Декоративные породы. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Декоративные породы. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Декоративные породы. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Декоративные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Декоративные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Декоративные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Декоративные породы. Породы собак. Статьи о домашних животных
                )
        )
    [5] => Array
        (
            [ID] => 21
            [NAME] => Служебные породы
            [~PICTURE] => 955
            [DESCRIPTION] => К ним относится ряд пород, которые человек использует для работы. Использование служебных...
            [DESCRIPTION_TYPE] => html
            [SECTION_PAGE_URL] => /articles/section/code/sluzhebnye-porody/
            [DEPTH_LEVEL] => 2
            [CODE] => sluzhebnye-porody
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_ID] => 5
            [IBLOCK_CODE] => articles
            [GLOBAL_ACTIVE] => Y
            [LEFT_MARGIN] => 10
            [PREVIEW_PICTURE] => Array
                (
                    [ID] => 955
                    [MODULE_ID] => iblock
                    [HEIGHT] => 200
                    [WIDTH] => 200
                    [FILE_SIZE] => 24596
                    [CONTENT_TYPE] => image/jpeg
                    [SRC] => /upload/iblock/b1a/b1a0c6fed22467a3da087c3fdae64241.jpg
                    [ALT] => Служебные породы. Статьи о домашних животных
                    [TITLE] => Служебные породы
                )
            [IPROPERTY_VALUES] => Array
                (
                    [SECTION_META_KEYWORDS] => служебные породы статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_DESCRIPTION] => Служебные породы. Статьи о домашних питомцах, советы по содержанию...
                    [SECTION_META_TITLE] => Служебные породы. Статьи о домашних животных
                    [ELEMENT_META_TITLE] => Служебные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_META_DESCRIPTION] => Служебные породы. Породы собак. Статьи о домашних питомцах, советы...
                    [ELEMENT_META_KEYWORDS] => служебные породы породы собак статьи о домашних питомцах, советы по...
                    [SECTION_PAGE_TITLE] => Служебные породы
                    [ELEMENT_PAGE_TITLE] => Служебные породы
                    [SECTION_PICTURE_FILE_ALT] => Служебные породы. Статьи о домашних животных
                    [SECTION_PICTURE_FILE_TITLE] => Служебные породы. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_ALT] => Служебные породы. Статьи о домашних животных
                    [SECTION_DETAIL_PICTURE_FILE_TITLE] => Служебные породы. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_ALT] => Служебные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_PREVIEW_PICTURE_FILE_TITLE] => Служебные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_ALT] => Служебные породы. Породы собак. Статьи о домашних животных
                    [ELEMENT_DETAIL_PICTURE_FILE_TITLE] => Служебные породы. Породы собак. Статьи о домашних животных
                )
        )
)

3. Выборка разделов инфоблока с построением иерархии

// какие поля разделов инфоблока выбираем
$arSelect = array(
    'ID',
    'NAME',
    'IBLOCK_SECTION_ID',
    'DEPTH_LEVEL'
);
// условия выборки разделов инфоблока
$arFilter = array(
    'IBLOCK_ID' => 5,        // идентификатор инфоблока
    'IBLOCK_ACTIVE' => 'Y',  // инфоблок должен быть активен
    'ACTIVE' => 'Y',         // только активные разделы
    'GLOBAL_ACTIVE'=>'Y',    // учитывать активность родителей
);
// сортировка разделов
$arSort = array(
    'DEPTH_LEVEL' => 'ASC',
    'SORT' => 'ASC'
);
// выполняем запрос к базе данных
$dbResult = CIBlockSection::GetList(
    $arSort,
    $arFilter,
    false,
    $arSelect
);
// немного магии, чтобы построить иерархию разделов
$temp = $tmp = array();
$tmp[0] = &$temp;
while($arSection = $dbResult->GetNext()) {
    $tmp[intval($arSection['IBLOCK_SECTION_ID'])]['CHILDS'][$arSection['ID']] = $arSection;
    $tmp[$arSection['ID']] = &$tmp[intval($arSection['IBLOCK_SECTION_ID'])]['CHILDS'][$arSection['ID']];
}
$arSections = $temp['CHILDS'];
unset($temp, $tmp);

print_r($arSections);
SELECT DISTINCT
    `BS`.`ID` AS `ID`,
    `BS`.`NAME` AS `NAME`,
    `BS`.`IBLOCK_SECTION_ID` AS `IBLOCK_SECTION_ID`,
    `BS`.`DEPTH_LEVEL` AS `DEPTH_LEVEL`,
    `BS`.`SORT` AS `SORT`
FROM
    `b_iblock_section` `BS` INNER JOIN `b_iblock` `B`
    ON `BS`.`IBLOCK_ID` = `B`.`ID`
WHERE
    1 = 1
    AND `BS`.`IBLOCK_ID` = '5'
    AND `BS`.`ACTIVE` = 'Y' 
    AND `BS`.`GLOBAL_ACTIVE` = 'Y' 
    AND `B`.`ID` = '5' 
    AND `B`.`ACTIVE` = 'Y' 
ORDER BY
    `BS`.`DEPTH_LEVEL` ASC, `BS`.`SORT` ASC
Array
(
    [16] => Array
        (
            [ID] => 16
            [NAME] => Породы кошек
            [IBLOCK_SECTION_ID] => 
            [DEPTH_LEVEL] => 1
            [CHILDS] => Array
                (
                    [17] => Array
                        (
                            [ID] => 17
                            [NAME] => Длинношерстные
                            [IBLOCK_SECTION_ID] => 16
                            [DEPTH_LEVEL] => 2
                        )
                    [18] => Array
                        (
                            [ID] => 18
                            [NAME] => Короткошерстные
                            [IBLOCK_SECTION_ID] => 16
                            [DEPTH_LEVEL] => 2
                        )
                )
        )
    [19] => Array
        (
            [ID] => 19
            [NAME] => Породы собак
            [IBLOCK_SECTION_ID] => 
            [DEPTH_LEVEL] => 1
            [CHILDS] => Array
                (
                    [20] => Array
                        (
                            [ID] => 20
                            [NAME] => Декоративные породы
                            [IBLOCK_SECTION_ID] => 19
                            [DEPTH_LEVEL] => 2
                        )
                    [21] => Array
                        (
                            [ID] => 21
                            [NAME] => Служебные породы
                            [IBLOCK_SECTION_ID] => 19
                            [DEPTH_LEVEL] => 2
                        )
                )
        )
)

4. Получение списка элементов инфоблока

// какие поля элементов выбираем
$arSelect = array(
    'ID',
    'CODE',
    'IBLOCK_ID',
    'NAME',
    'PREVIEW_PICTURE',
    'DETAIL_PAGE_URL',
    'PREVIEW_TEXT',
    'PREVIEW_TEXT_TYPE',
    'SHOW_COUNTER'
);
// условия выборки элементов инфоблока
$arFilter = array(
    'IBLOCK_ID' => 5,             // идентификатор инфоблока
    'IBLOCK_ACTIVE' => 'Y',       // инфоблок должен быть активным
    'SECTION_ID' => 16,           // идентификатор родителя
    'SECTION_ACTIVE' => 'Y',      // родитель должен быть активным
    'INCLUDE_SUBSECTIONS' => 'Y', // включая элементы из подразделов
    'ACTIVE' => 'Y',              // только активные элементы
    'ACTIVE_DATE' => 'Y'          // учитывать дату активности
);
// сортировка по кол-ву просмотров
$arSort = array(
    'SHOW_COUNTER' => 'DESC',
);
// выполняем запрос к базе данных
$dbResult = CIBlockElement::GetList(
    $arSort,
    $arFilter,
    false,
    false,
    $arSelect
);

$arElements = array();
while ($arElement = $dbResult->GetNext()) {
    $arElements[] = $arElement;
}

print_r($arElements);
SELECT DISTINCT
    `BE`.`ID` AS `ID`,
    `BE`.`CODE` AS `CODE`,
    `BE`.`IBLOCK_ID` AS `IBLOCK_ID`,
    `BE`.`NAME` AS `NAME`,
    `BE`.`PREVIEW_PICTURE` AS `PREVIEW_PICTURE`,
    `B`.`DETAIL_PAGE_URL` AS `DETAIL_PAGE_URL`,
    `BE`.`PREVIEW_TEXT` AS `PREVIEW_TEXT`,
    `BE`.`PREVIEW_TEXT_TYPE` AS `PREVIEW_TEXT_TYPE`,
    `BE`.`SHOW_COUNTER` AS `SHOW_COUNTER`,
    `L`.`DIR` AS `LANG_DIR`,
    `BE`.`XML_ID` AS `EXTERNAL_ID`,
    `BE`.`IBLOCK_SECTION_ID` AS `IBLOCK_SECTION_ID`,
    `B`.`IBLOCK_TYPE_ID` AS `IBLOCK_TYPE_ID`,
    `B`.`CODE` AS `IBLOCK_CODE`,
    `B`.`XML_ID` AS `IBLOCK_EXTERNAL_ID`,
    `B`.`LID` AS `LID`
FROM 
    `b_iblock` `B`
    INNER JOIN `b_lang` `L` ON `B`.`LID` = `L`.`LID`
    INNER JOIN `b_iblock_element` `BE` ON `BE`.`IBLOCK_ID` = `B`.`ID`
    INNER JOIN (
        SELECT DISTINCT
            `BSE`.`IBLOCK_ELEMENT_ID`
        FROM
            `b_iblock_section_element` `BSE`
            INNER JOIN `b_iblock_section` `BSubS` ON `BSE`.`IBLOCK_SECTION_ID` = `BSubS`.`ID`
            INNER JOIN `b_iblock_section` `BS` ON
                (`BSubS`.`IBLOCK_ID` = `BS`.`IBLOCK_ID`
                AND `BSubS`.`LEFT_MARGIN` >= `BS`.`LEFT_MARGIN`
                AND `BSubS`.`RIGHT_MARGIN` <= `BS`.`RIGHT_MARGIN`)
        WHERE
            `BS`.`ID` IN (16) AND `BSubS`.`ACTIVE` = 'Y'
    ) `BES` ON `BES`.`IBLOCK_ELEMENT_ID` = `BE`.`ID`
WHERE
    1 = 1 
    AND (
        `BE`.`IBLOCK_ID` = '5'
        AND `B`.`ACTIVE` = 'Y'
        AND `BE`.`ACTIVE` = 'Y'
        AND (
            (`BE`.`ACTIVE_TO` >= NOW() OR `BE`.`ACTIVE_TO` IS NULL)
            AND
            (`BE`.`ACTIVE_FROM` <= NOW() OR `BE`.`ACTIVE_FROM` IS NULL)
        )
    )
    AND (
        `BE`.`WF_STATUS_ID` = 1 AND `BE`.`WF_PARENT_ELEMENT_ID` IS NULL
    )
ORDER BY
    `BE`.`SHOW_COUNTER` DESC 
Array
(
    [0] => Array
        (
            [ID] => 322
            [CODE] => abissinskaya-koshka
            [IBLOCK_ID] => 5
            [NAME] => Абиссинская кошка
            [PREVIEW_PICTURE] => 970
            [DETAIL_PAGE_URL] => /articles/element/code/abissinskaya-koshka/
            [PREVIEW_TEXT] => Абиссинская кошка — одна из самых древних пород кошек. Изображение кошек на древних...
            [PREVIEW_TEXT_TYPE] => text
            [SHOW_COUNTER] => 12
            [IBLOCK_SECTION_ID] => 18
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [IBLOCK_EXTERNAL_ID] => 5
            [LID] => s1
        )
    [1] => Array
        (
            [ID] => 325
            [CODE] => amerikanskiy-bobteyl
            [IBLOCK_ID] => 5
            [NAME] => Американский бобтейл
            [PREVIEW_PICTURE] => 976
            [DETAIL_PAGE_URL] => /articles/element/code/amerikanskiy-bobteyl/
            [PREVIEW_TEXT] => Американский бобтейл — необычная порода домашней кошки, которая была разработана в...
            [PREVIEW_TEXT_TYPE] => text
            [SHOW_COUNTER] => 3
            [IBLOCK_SECTION_ID] => 16
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [LID] => s1
        )
    [2] => Array
        (
            [ID] => 324
            [CODE] => angorskaya-koshka
            [IBLOCK_ID] => 5
            [NAME] => Ангорская кошка
            [PREVIEW_PICTURE] => 974
            [DETAIL_PAGE_URL] => /articles/element/code/angorskaya-koshka/
            [PREVIEW_TEXT] => Ангорская кошка — порода домашних кошек, которая была создана европейскими и...
            [PREVIEW_TEXT_TYPE] => text
            [SHOW_COUNTER] => 2
            [IBLOCK_SECTION_ID] => 17
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [LID] => s1
        )
    [3] => Array
        (
            [ID] => 323
            [CODE] => siamskaya-koshka
            [IBLOCK_ID] => 5
            [NAME] => Сиамская кошка
            [PREVIEW_PICTURE] => 972
            [DETAIL_PAGE_URL] => /articles/element/code/siamskaya-koshka/
            [PREVIEW_TEXT] => Сиамские кошки являются одними из старейших и самых известных пород в мире. Красивые...
            [SHOW_COUNTER] => 1
            [IBLOCK_SECTION_ID] => 16
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [LID] => s1
        )
    [4] => Array
        (
            [ID] => 327
            [CODE] => meyn-kun
            [IBLOCK_ID] => 5
            [NAME] => Мейн кун
            [PREVIEW_PICTURE] => 982
            [DETAIL_PAGE_URL] => /articles/element/code/
            [PREVIEW_TEXT] => Порода мейн-кун произошла из северных штатов США. Существует несколько мифов об этой...
            [PREVIEW_TEXT_TYPE] => text
            [SHOW_COUNTER] => 
            [IBLOCK_SECTION_ID] => 17
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [LID] => s1
        )
    [5] => Array
        (
            [ID] => 326
            [CODE] => britanskaya-korotkosherstnaya
            [IBLOCK_ID] => 5
            [NAME] => Британская короткошерстная
            [PREVIEW_PICTURE] => 978
            [DETAIL_PAGE_URL] => /articles/element/code/britanskaya-korotkosherstnaya/
            [PREVIEW_TEXT] => Британская короткошерстная – одна из самых древних пород кошек, истоки которой восходят...
            [PREVIEW_TEXT_TYPE] => text
            [SHOW_COUNTER] => 
            [IBLOCK_SECTION_ID] => 18
            [IBLOCK_TYPE_ID] => content
            [IBLOCK_CODE] => articles
            [LID] => s1
        )
)

5. Выборка элементов инфоблока вместе с пользовательскими свойствами

// какие поля элементов выбираем
$arSelect = array(
    'ID',
    'CODE',
    'NAME',
    'IBLOCK_ID',  // это поле обязательно
    'PROPERTY_*', // пользовательские свойства
);
// условия выборки элементов инфоблока
$arFilter = array(
    'IBLOCK_ID' => 5,             // идентификатор инфоблока
    'IBLOCK_ACTIVE' => 'Y',       // инфоблок должен быть активным
    'SECTION_ID' => 16,           // идентификатор родителя
    'SECTION_ACTIVE' => 'Y',      // родитель должен быть активным
    'ACTIVE' => 'Y',              // только активные элементы
    'ACTIVE_DATE' => 'Y'          // учитывать дату активности
);
// сортировка по кол-ву просмотров
$arSort = array(
    'SHOW_COUNTER' => 'DESC',
);
// выполняем запрос к базе данных
$dbResult = CIBlockElement::GetList(
    $arSort,
    $arFilter,
    false,
    false,
    $arSelect
);

$arElements = array();
while ($obElement = $dbResult->GetNextElement()) {
    // получаем поля текущего элемента
    $arElement = $obElement->GetFields();
    // пользовательские свойства текущего элеиента
    $arElement['PROPERTIES'] = $obElement->GetProperties();
    // получаем значения пользовательских свойств в удобном для отображения виде
    foreach ($arElement['PROPERTIES'] as $code => $data) {
        $arElement['DISPLAY_PROPERTIES'][$code] = CIBlockFormatProperties::GetDisplayValue($arElement, $data, '');
    }
    $arElements[] = $arElement;
}

print_r($arElements);

Выбираем элементы инфоблока, в данном случае их будет всего два:

SELECT
    `BE`.`ID` as `ID`,
    `BE`.`CODE` as `CODE`,
    `BE`.`NAME` as `NAME`,
    `BE`.`IBLOCK_ID` as `IBLOCK_ID`,
    `BE`.`SHOW_COUNTER` as `SHOW_COUNTER`
FROM 
    `b_iblock` `B`
    INNER JOIN `b_lang` `L` ON `B`.`LID` = `L`.`LID`
    INNER JOIN `b_iblock_element` `BE` ON `BE`.`IBLOCK_ID` = `B`.`ID`
    INNER JOIN (
        SELECT DISTINCT
            `BSE`.`IBLOCK_ELEMENT_ID`
        FROM
            `b_iblock_section_element` `BSE`
            INNER JOIN `b_iblock_section` `BS` ON `BSE`.`IBLOCK_SECTION_ID` = `BS`.`ID`
        WHERE
            `BS`.`ID` IN (16) AND `BS`.`ACTIVE` = 'Y'
    ) `BES` ON `BES`.`IBLOCK_ELEMENT_ID` = `BE`.`ID`
WHERE
    1 = 1 
    AND (
        `BE`.`IBLOCK_ID` = '5'
        AND `B`.`ACTIVE` = 'Y'
        AND `BE`.`ACTIVE` = 'Y'
        AND (
            (`BE`.`ACTIVE_TO` >= NOW() OR `BE`.`ACTIVE_TO` IS NULL)
            AND
            (`BE`.`ACTIVE_FROM` <= NOW() OR `BE`.`ACTIVE_FROM` IS NULL)
        )
    )
    AND (
        `BE`.`WF_STATUS_ID` = 1 AND `BE`.`WF_PARENT_ELEMENT_ID` IS NULL
    )
ORDER BY
    `BE`.`SHOW_COUNTER` DESC

Для каждого элемента инфоблока выбираем пользовательские свойства, два элемента — два SQL-запроса:

SELECT
    `BP`.`*`,
    `BEP`.`ID` AS `PROPERTY_VALUE_ID`,
    `BEP`.`VALUE`,
    `BEP`.`DESCRIPTION`,
    `BEPE`.`VALUE` `VALUE_ENUM`,
    `BEPE`.`XML_ID` `VALUE_XML_ID`,
    `BEPE`.`SORT` `VALUE_SORT`
FROM
    `b_iblock` `B`
    INNER JOIN `b_iblock_property` `BP`
    ON `B`.`ID` = `BP`.`IBLOCK_ID`
    LEFT JOIN `b_iblock_element_property` `BEP`
    ON (`BP`.`ID` = `BEP`.`IBLOCK_PROPERTY_ID` AND `BEP`.`IBLOCK_ELEMENT_ID` = 325)
    LEFT JOIN `b_iblock_property_enum` `BEPE`
    ON (`BP`.`PROPERTY_TYPE` = 'L' AND `BEPE`.`ID` = `BEP`.`VALUE_ENUM` AND `BEPE`.`PROPERTY_ID` = `BP`.`ID`)
WHERE
    `B`.`ID` = 5 AND `BP`.`ACTIVE` = 'Y'
ORDER BY
    `BP`.`SORT` ASC, `BP`.`ID` ASC, `BEPE`.`SORT` ASC, `BEP`.`ID` ASC
SELECT
    `BP`.`*`,
    `BEP`.`ID` AS `PROPERTY_VALUE_ID`,
    `BEP`.`VALUE`,
    `BEP`.`DESCRIPTION`,
    `BEPE`.`VALUE` `VALUE_ENUM`,
    `BEPE`.`XML_ID` `VALUE_XML_ID`,
    `BEPE`.`SORT` `VALUE_SORT`
FROM
    `b_iblock` `B`
    INNER JOIN `b_iblock_property` `BP`
    ON `B`.`ID` = `BP`.`IBLOCK_ID`
    LEFT JOIN `b_iblock_element_property` `BEP`
    ON (`BP`.`ID` = `BEP`.`IBLOCK_PROPERTY_ID` AND `BEP`.`IBLOCK_ELEMENT_ID` = 323)
    LEFT JOIN `b_iblock_property_enum` `BEPE`
    ON (`BP`.`PROPERTY_TYPE` = 'L' AND `BEPE`.`ID` = `BEP`.`VALUE_ENUM` AND `BEPE`.`PROPERTY_ID` = `BP`.`ID`)
WHERE
    `B`.`ID` = 5 AND `BP`.`ACTIVE` = 'Y'
ORDER BY
    `BP`.`SORT` ASC, `BP`.`ID` ASC, `BEPE`.`SORT` ASC, `BEP`.`ID` ASC
Array
(
    [0] => Array
        (
            [ID] => 325
            [CODE] => amerikanskiy-bobteyl
            [NAME] => Американский бобтейл
            [IBLOCK_ID] => 5
            [SHOW_COUNTER] => 3
            [PROPERTIES] => Array
                (
                    [AUTHOR] => Array
                        (
                            [ID] => 44
                            [NAME] => Автор
                            [CODE] => AUTHOR
                            ..........
                            [VALUE] => Петр Смирнов
                        )
                    [RATING] => Array
                        (
                            [ID] => 45
                            [NAME] => Оценка
                            [CODE] => RATING
                            ..........
                            [VALUE] => Посредственно
                        )
                    [GALLERY] => Array
                        (
                            [ID] => 46
                            [NAME] => Галерея
                            [CODE] => GALLERY
                            ..........
                            [VALUE] => Array
                                (
                                    [0] => 991
                                    [1] => 992
                                    [2] => 993
                                    [3] => 994
                                    [4] => 995
                                )
                        )
                    [UPDATE] => Array
                        (
                            [ID] => 47
                            [NAME] => Дата обновления
                            [CODE] => UPDATE
                            ..........
                            [VALUE] => 17.12.2018
                        )
                    [NOTE] => Array
                        (
                            [ID] => 48
                            [NAME] => Примечание
                            [CODE] => NOTE
                            ..........
                            [VALUE] => Array
                                (
                                    [TEXT] => Примечание к статье об американском бобтейле
                                    [TYPE] => HTML
                                )
                        )
                )
            [DISPLAY_PROPERTIES] => Array
                (
                    [AUTHOR] => Array
                        (
                            [ID] => 44
                            [NAME] => Автор
                            [CODE] => AUTHOR
                            ..........
                            [VALUE] => Петр Смирнов
                            [DISPLAY_VALUE] => Петр Смирнов
                        )
                    [RATING] => Array
                        (
                            [ID] => 45
                            [NAME] => Оценка
                            [CODE] => RATING
                            ..........
                            [VALUE] => Посредственно
                            [DISPLAY_VALUE] => Посредственно
                        )
                    [GALLERY] => Array
                        (
                            [ID] => 46
                            [NAME] => Галерея
                            [CODE] => GALLERY
                            ..........
                            [VALUE] => Array
                                (
                                    [0] => 991
                                    [1] => 992
                                    [2] => 993
                                    [3] => 994
                                    [4] => 995
                                )
                            [DISPLAY_VALUE] => Array
                                (
                                    [0] => Загрузить
                                    [1] => Загрузить
                                    [2] => Загрузить
                                    [3] => Загрузить
                                    [4] => Загрузить
                                )
                            [FILE_VALUE] => Array
                                (
                                    [0] => Array
                                        (
                                            [ID] => 991
                                            [HEIGHT] => 700
                                            [WIDTH] => 700
                                            [FILE_SIZE] => 379663
                                            [CONTENT_TYPE] => image/jpeg
                                            ..........
                                            [SRC] => /upload/iblock/9ac/9ac6847a04b43ce34c2869a5bf459f7b.jpg
                                        )
                                    [1] => Array
                                        (
                                            [ID] => 992
                                            [HEIGHT] => 700
                                            [WIDTH] => 700
                                            [FILE_SIZE] => 383909
                                            [CONTENT_TYPE] => image/jpeg
                                            ..........
                                            [SRC] => /upload/iblock/e56/e56e88a67e625d79d83c33ae20694d9d.jpg
                                        )
                                    [2] => Array
                                        (
                                            [ID] => 993
                                            [HEIGHT] => 700
                                            [WIDTH] => 700
                                            [FILE_SIZE] => 337111
                                            [CONTENT_TYPE] => image/jpeg
                                            ..........
                                            [SRC] => /upload/iblock/e0e/e0e23b9f14bcb5b6bdf490e9d7df4863.jpg
                                        )
                                )
                        )
                    [UPDATE] => Array
                        (
                            [ID] => 47
                            [NAME] => Дата обновления
                            [CODE] => UPDATE
                            ..........
                            [VALUE] => 17.12.2018
                            [DISPLAY_VALUE] => 17.12.2018
                        )
                    [NOTE] => Array
                        (
                            [ID] => 48
                            [NAME] => Примечание
                            [CODE] => NOTE
                            ..........
                            [VALUE] => Array
                                (
                                    [TEXT] => Примечание к статье об американском бобтейле
                                    [TYPE] => HTML
                                )
                            [DISPLAY_VALUE] => Примечание к статье об американском бобтейле
                        )
                )
        )
    [1] => Array
        (
            ..........
        )
)

6. Выборка пользовательских свойств элементов инфоблока

// условия выборки пользовательских свойств
$arFilter = array(
    'IBLOCK_ID' => 5 // идентификатор инфоблока
);
// сортировка пользовательских свойств
$arSort = array(
    'SORT' => 'ASC'
);
// выполняем запрос к базе данных
$dbResult = CIBlockProperty::GetList(
    $arSort,
    $arFilter
);

$arProperties = array();
while ($arProperty = $dbResult->GetNext()) {
    $arProperties[] = $arProperty;
}

print_r($arProperties);
SELECT
    `BP`.`*`
FROM
    `b_iblock_property` `BP`
WHERE
    `BP`.`IBLOCK_ID` = 5
ORDER BY
    `BP`.`SORT` ASC
Array
(
    [0] => Array
        (
            [ID] => 44
            [TIMESTAMP_X] => 2018-12-17 14:50:55
            [IBLOCK_ID] => 5
            [NAME] => Автор
            [ACTIVE] => Y
            [SORT] => 500
            [CODE] => AUTHOR
            [DEFAULT_VALUE] => 
            [PROPERTY_TYPE] => S
            [ROW_COUNT] => 1
            [COL_COUNT] => 30
            [LIST_TYPE] => L
            [MULTIPLE] => N
            [XML_ID] => 47
            [FILE_TYPE] => 
            [MULTIPLE_CNT] => 5
            [TMP_ID] => 
            [LINK_IBLOCK_ID] => 0
            [WITH_DESCRIPTION] => N
            [SEARCHABLE] => N
            [FILTRABLE] => N
            [IS_REQUIRED] => N
            [VERSION] => 1
            [USER_TYPE] => 
            [USER_TYPE_SETTINGS] => 
            [HINT] => 
        )
    [1] => Array
        (
            [ID] => 45
            [TIMESTAMP_X] => 2018-12-17 14:50:55
            [IBLOCK_ID] => 5
            [NAME] => Оценка
            [ACTIVE] => Y
            [SORT] => 500
            [CODE] => RATING
            [DEFAULT_VALUE] => 
            [PROPERTY_TYPE] => L
            [ROW_COUNT] => 1
            [COL_COUNT] => 30
            [LIST_TYPE] => L
            [MULTIPLE] => N
            [XML_ID] => 48
            [FILE_TYPE] => 
            [MULTIPLE_CNT] => 5
            [TMP_ID] => 
            [LINK_IBLOCK_ID] => 0
            [WITH_DESCRIPTION] => N
            [SEARCHABLE] => N
            [FILTRABLE] => N
            [IS_REQUIRED] => N
            [VERSION] => 1
            [USER_TYPE] => 
            [USER_TYPE_SETTINGS] => 
            [HINT] => 
        )
    [2] => Array
        (
            [ID] => 46
            [TIMESTAMP_X] => 2018-12-17 14:50:55
            [IBLOCK_ID] => 5
            [NAME] => Галерея
            [ACTIVE] => Y
            [SORT] => 500
            [CODE] => GALLERY
            [DEFAULT_VALUE] =>
            [PROPERTY_TYPE] => F
            [ROW_COUNT] => 1
            [COL_COUNT] => 30
            [LIST_TYPE] => L
            [MULTIPLE] => Y
            [XML_ID] => 49
            [FILE_TYPE] => jpg, gif, bmp, png, jpeg
            [MULTIPLE_CNT] => 5
            [TMP_ID] => 
            [LINK_IBLOCK_ID] => 0
            [WITH_DESCRIPTION] => N
            [SEARCHABLE] => N
            [FILTRABLE] => N
            [IS_REQUIRED] => N
            [VERSION] => 1
            [USER_TYPE] => 
            [USER_TYPE_SETTINGS] => 
            [HINT] => 
        )
    [3] => Array
        (
            [ID] => 47
            [TIMESTAMP_X] => 2018-12-17 14:50:55
            [IBLOCK_ID] => 5
            [NAME] => Дата обновления
            [ACTIVE] => Y
            [SORT] => 500
            [CODE] => UPDATE
            [DEFAULT_VALUE] => 
            [PROPERTY_TYPE] => S
            [ROW_COUNT] => 1
            [COL_COUNT] => 30
            [LIST_TYPE] => L
            [MULTIPLE] => N
            [XML_ID] => 50
            [FILE_TYPE] => 
            [MULTIPLE_CNT] => 5
            [TMP_ID] => 
            [LINK_IBLOCK_ID] => 0
            [WITH_DESCRIPTION] => N
            [SEARCHABLE] => N
            [FILTRABLE] => N
            [IS_REQUIRED] => N
            [VERSION] => 1
            [USER_TYPE] => Date
            [USER_TYPE_SETTINGS] => 
            [HINT] => 
        )
    [4] => Array
        (
            [ID] => 48
            [TIMESTAMP_X] => 2018-12-17 14:50:55
            [IBLOCK_ID] => 5
            [NAME] => Примечание
            [ACTIVE] => Y
            [SORT] => 500
            [CODE] => NOTE
            [DEFAULT_VALUE] => Array
                (
                    [TYPE] => TEXT
                    [TEXT] => 
                )
            [PROPERTY_TYPE] => S
            [ROW_COUNT] => 1
            [COL_COUNT] => 30
            [LIST_TYPE] => L
            [MULTIPLE] => N
            [XML_ID] => 51
            [FILE_TYPE] => 
            [MULTIPLE_CNT] => 5
            [TMP_ID] => 
            [LINK_IBLOCK_ID] => 0
            [WITH_DESCRIPTION] => N
            [SEARCHABLE] => N
            [FILTRABLE] => N
            [IS_REQUIRED] => N
            [VERSION] => 1
            [USER_TYPE] => HTML
            [USER_TYPE_SETTINGS] => Array
                (
                    [height] => 200
                )
            [HINT] => 
        )
)

Поиск: CMS • Web-разработка • Битрикс • Инфоблок • Раздел инфоблока • Старое ядро • Элемент инфоблока

Каталог оборудования
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Производители
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Функциональные группы
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.