Если нужно получить какие-то данные о текущем разделе, которых нет в изначальном массиве, можно воспользоваться методом CIBlockFindTools::GetSectionID. Он позволяет получить ID текущего раздела.
$arResult['SECTION_ID'] = CIBlockFindTools::GetSectionID( $arResult['VARIABLES']['SECTION_ID'], $arResult['VARIABLES']['SECTION_CODE'], array('IBLOCK_ID' => $arParams['IBLOCK_ID']) );
Этим методом, в $arResult[‘SECTION_ID’] получили ID текущего раздела.
А дальше, зная ID раздела, методом CIBlockSection::GetList получаем нужную информацию о разделе (перечисляя нужные в $arSelect), включая пользовательские поля и загоняем в переменные.
$arSelect = array( 'NAME', 'DESCRIPTION', 'PICTURE', 'UF_*' // все пользовательские поля, можно перечислять конкретные ); $sectionResult = CIBlockSection::GetList( false, array( "IBLOCK_ID" => $arParams["IBLOCK_ID"], "ID" => $arResult["SECTION_ID"] ), false, $arSelect ); while ($sectionProp = $sectionResult->GetNext()) { $sectDescript = $sectionProp['DESCRIPTION']; // Описание раздела $sectPict = $sectionProp['PICTURE']; // Картинка раздела $ufLink = $sectionProp['~UF_LINK']; // Пользователькое поле с кодом UF_LINK- в html формате $ufText = $sectionProp['UF_TEXT']; // Пользователькое поле с кодом UF_TEXT }
А далее используем эти переменные в любом месте section.php, для красоты, проверяя на наличие (не пустоту)
//Картинка (с уменьшением) if (!empty($sectPict)) { $renderImageSect = CFile::ResizeImageGet($sectPict, Array("width" => '1200', "height" => '400'), BX_RESIZE_IMAGE_EXACT); echo $renderImageSect['src'] } //Описание if (!empty($sectDescript)) { echo $sectDescript; }