Небольшой хак, как показать форму любого пользователького поля, например, на странице своего модуля. Единственное условие: так это надо знать ID инфоблока, у когорого это свойство есть.

Выводить будем «Мульти-текстовые блоки с заголовком».

Код для вывода формы пользовательского поля

//<?php
 
global $USER_FIELD_MANAGER;
 
$iblockId = 1;
$ufEntityCode = 'IBLOCK_%s_SECTION';
 
if ($arUserField = getUserTypeMultiString($ufEntityCode, $iblockId)) {
 
    // обзываем любым именем, которое нам будет удобно обработать
    $arUserField['FIELD_NAME'] = sprintf(
        'olegpro_sfm_seo_meta_meta_string_block'
    );
 
    // добавляем выбранные значения
    $arUserField['VALUE'] = array_map(
        function ($value) {
            return serialize($value);
        },
        array(
            array('HEADER' => 'header1', 'TEXT' => 'text1'),
            array('HEADER' => 'header2', 'TEXT' => 'text2'),
        )
    );
 
    // показываем форму
    echo $USER_FIELD_MANAGER->GetEditFormHTML(false, '', $arUserField);
}
 
function getUserTypeMultiString($ufEntityCode, $iblockId)
{
 
    global $USER_FIELD_MANAGER, $USER;
 
    static $result = null;
 
    $userId = $USER->GetID();
 
    if ($result === null) {
        $resProperty = \CUserTypeEntity::GetList(
            array(),
            array(
                'ENTITY_ID' => sprintf($ufEntityCode, $iblockId),
                'USER_TYPE_ID' => 'multi_string_block'
            )
        );
 
        if ($arUserField = $resProperty->Fetch()) {
 
            if ($arType = $USER_FIELD_MANAGER->GetUserType($arUserField['USER_TYPE_ID'])) {
                if (
                    $userId !== 0
                    && is_callable(array($arType['CLASS_NAME'], 'checkpermission'))
                ) {
                    if (!call_user_func_array(
                        array($arType['CLASS_NAME'], 'checkpermission'),
                        array($arUserField, $userId)
                    )
                    ) {
                        return false;
                    }
                }
                $arUserField['USER_TYPE'] = $arType;
 
                $arUserField['VALUE'] = false;
 
                if (!is_array($arUserField['SETTINGS']) || empty($arUserField['SETTINGS'])) {
                    $arUserField['SETTINGS'] = $USER_FIELD_MANAGER->PrepareSettings(0, $arUserField);
                }
 
            }
 
            $entityUserTypeLang = \Bitrix\Main\Entity\Base::compileEntity(
                'TableUserTypeLang',
                array(
                    'USER_FIELD_ID' => array('data_type' => 'integer'),
                    'LANGUAGE_ID' => array('data_type' => 'string'),
                    'EDIT_FORM_LABEL' => array('data_type' => 'string'),
                    'LIST_COLUMN_LABEL' => array('data_type' => 'string'),
                    'LIST_FILTER_LABEL' => array('data_type' => 'string'),
                ),
                array('table_name' => sprintf('b_user_field_lang'))
            );
 
            $userTypeLangClass = $entityUserTypeLang->getDataClass();
 
            $userTypeLangIterator = $userTypeLangClass::getList(array(
                'select' => array(
                    'EDIT_FORM_LABEL',
                    'LIST_COLUMN_LABEL',
                    'LIST_FILTER_LABEL',
                ),
                'filter' => array(
                    'USER_FIELD_ID' => $arUserField['ID'],
                    'LANGUAGE_ID' => 'ru',
                )
            ));
            if ($userTypeLang = $userTypeLangIterator->fetch()) {
                $arUserField = array_merge($arUserField, $userTypeLang);
            }
 
            $arUserField['VALUE'] = '';
 
            $result = $arUserField;
 
        }
    }
 
    return $result;
 
}