Заказать звонок
Логин
Пароль
Логин
Пароль

Как добавить и отобразить свойства у разделов в 1С-Битрикс

10.10.2019
#Оптимизация
#Программирование
#Создание сайтов
Если в вашем инфоблоке богатая структура, а именно — есть и элементы и разделы, то рано или поздно вам захочется вывести свойство, которое привязано к конкретному разделу. Сделать это можно несколькими способами, но мы рассмотрим только вывод через пользовательские свойства.

Как добавить и вывести дополнительные поля и свойства раздела в 1С-Битрикс

Чтобы это сделать, зайдите в админку, на нужном разделе нажмите «Изменить» или кликните по его ID (стоит отметить, если вы кликните по имени раздела, вы перейдете в сам раздел).


Отлично, мы в настройках раздела. На последней вкладке Доп. свойства мы и создадим наше пользовательское свойство, кликаем на Добавить пользовательское свойство(если у вас ее нету, не забудьте сбросить ваши настройки формы — делается это тут же, кликните на синюю шестеренку и отмените настройки).

<?$fSections = CIBlockSection::GetList( false, Array("IBLOCK_ID" => 14, "ID" => $arResult ['ID'], "ACTIVE"=>"Y", "GLOBAL_ACTIVE"=>"Y", "SECTION_ACTIVE" => "Y"), false, Array("UF_TITLE", "UF_KEYWORDS", "UF_DESCRIPTION), false ); $flSections = $fSections->Fetch(); if ($flSections['UF_TITLE']) { $APPLICATION->SetPageProperty("title", $flSections['UF_TITLE']); }?>

Теперь нам необходимо создать поле. Самым популярным типом является строка, меняем наш тип (по умолчанию Видео) на Строка. Самое важное задать понятный Код поля — ну, например, это может быть UF_TITLE или UF_SECTION_DESC — этот код нам в дальнейшем пригодится для вывода, поэтому желательно давать осмысленные названия.

Кстати говоря, приставку UF_ рекомендуется оставить, так как другим разработчикам будет более понятней что мы пытаемся вывести, да и вам самим тоже. В самом низу формы создания поля, после того как мы придумали ему имя и задали тип, мы пишем ему название на русском и английском (для админки).

1С-Битрикс как вывести пользовательские поля разделов

Поле мы создали, осталось понять как его вывести на сайте. Для начала заполните на каком-то разделе эти свойства (я создам 3 поля для мета свойств), после чего переходим на этот раздел на нашем сайте. Если нам необходимо выводить эти свойства динамически (ID раздела будет меняться в зависимости от того, на каком разделе мы сейчас находимся), то заходим в наш код компонента (новости это или каталог) и где-нибудь в начале кода или в самом конце пишем:

Тут мы задаем ID инфоблока «IBLOCK_ID» => 14, и подхватываем наш динамический ID раздела
«ID» => $arResult [‘ID’]. В массиве, который отвечает за выбор полей для отображения, мы выводим 3 наших только что созданных свойства типа строка «UF_TITLE», «UF_KEYWORDS», «UF_DESCRIPTION».


#Оптимизация
#Программирование
#Создание сайтов