Битрикс. Работа с инфоблоками в старом ядре
20.12.2018
Теги: CMS • Web-разработка • Битрикс • Инфоблок • РазделИнфоблока • СтароеЯдро • ЭлементИнфоблока
Узелки на память:
- Получение корневых разделов инфоблока
- Выборка разделов инфоблока и получение SEO-данных
- Выборка разделов инфоблока с построением иерархии
- Получение списка элементов инфоблока
- Выборка элементов инфоблока вместе с пользовательскими свойствами
- Выборка пользовательских свойств элементов инфоблока
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] => ) )
- Битрикс. Работа с инфоблоками в новом ядре
- Битрикс. Создание комплексного компонента. Часть 4 из 4
- Битрикс. Создание комплексного компонента. Часть 3 из 4
- Битрикс. Создание комплексного компонента. Часть 2 из 4
- Битрикс. Создание комплексного компонента. Часть 1 из 4
- Битрикс. Работа с шаблонами SEO
- Битрикс. SEO для инфоблока, раздела и страницы
Поиск: CMS • Web-разработка • Битрикс • Инфоблок • Раздел инфоблока • Старое ядро • Элемент инфоблока