Пользовательские поля UF_, как получить названия
Названия хранятся в таблице b_user_field_lang, но отдельного метода для работы с ней я не нашел, пришлось "костылить"
$dbUserFields = \Bitrix\Main\UserFieldTable::getList(array( 'filter' => array('ENTITY_ID' => 'USER'), 'select' => array('ID') )); while ($arUserField = $dbUserFields->fetch()) { $arUserField = CUserTypeEntity::GetByID($arUserField['ID']); // В этом методе есть запрос lang файлов var_dump($arUserField["EDIT_FORM_LABEL"]); }
Есть вопросы или нашли ошибку? Напишите комментарий (можно без регистрации), отвечать стараюсь быстро.
$result = Bitrix\Main\UserFieldTable::getList( [ 'select' => ['*', 'NAME' => 'UFL.EDIT_FORM_LABEL'], 'filter' => ['ENTITY_ID' => 'IBLOCK_1_SECTION'], 'runtime' => [ new \Bitrix\Main\Entity\ReferenceField( 'UFL', '\Bitrix\Main\UserFieldLangTable', ['=this.ID' => 'ref.USER_FIELD_ID', '=ref.LANGUAGE_ID' => new \Bitrix\Main\DB\SqlExpression('?s', 'ru')], ['join_type' => 'LEFT'] ) ] ] )->FetchAll();