Документация для разработчиков
Темная тема

Компоненты отрисовки пользовательских полей

Описание

С версии 20.0.800 модуля main доступно новое API для отрисовки контролов пользовательских полей.

Вызов компонента и его параметры одинаковы для всех компонентов, меняется только название компонента.

Все компоненты содержат шаблоны для декстопа и мобильного приложения, поддерживают возможность изменения внешнего вида контролов через стандартный механизм шаблонов.

Компоненты являются системными и в визуальном редакторе не отображаются. В физической структуре сайта их можно найти в папке /bitrix/components/bitrix/[название_компонента].

Список компонентов

КомпонентОписание
iblock.field.sectionПредназначен для отрисовки пользовательских полей типа iblock_section (ссылка на раздел инфоблока) через новое API.
iblock.field.elementПредназначен для отрисовки пользовательских полей типа iblock_element (ссылка на элемент инфоблока) через новое API.

Дополнительно

Также можно использовать универсальное API:

$renderer = new \Bitrix\Iblock\UserField\Renderer($userField, $additionalParameters);
return $renderer->render();

Параметры

ПараметрОписание
$userFieldМассив метаинформации пользовательского поля. Может быть получен методом GetUserFields класса CUserTypeManager.
$additionalParametersМассив, содержащий необходимые настройки в зависимости от шаблона, которым выводится контрол. В частности в этом массиве передаются следующие элементы:
  • mode - имя шаблона компонента;
  • mediaType - имя страницы шаблона, на текущий момент или .default, или mobile. Пустое значение эквивалентно .default.

Пример вызова компонента iblock.field.section

<?
$APPLICATION->IncludeComponent(
            'bitrix:iblock.field.section',
            '',
            [
                'userField' => $userField,
                'additionalParameters' => $additionalParameters,
            ]
        );
?>

Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2020, «1С-Битрикс», 2020
Наверх