Как добавить отчество в компонент регистрации system.auth.registration
Стандартно это сделать невозможно, т.к. компонент системный и его параметрами мы управлять не можем.
Так что будем "костылить".
Копируем шаблон компонента и добавляем новый инпут в template.php
<input type="text" name="USER_SECOND_NAME" value="<?=$arResult["USER_SECOND_NAME"]?>" >
Создаем в скопированном шаблоне новый файл (если нет) result_modifier.php и вписываем 2 строки
<? $arResult["USER_SECOND_NAME"] = strlen($_REQUEST["USER_SECOND_NAME"]) > 0 ? $_REQUEST["USER_SECOND_NAME"] : ""; $arResult["USER_SECOND_NAME"] = htmlspecialcharsbx($arResult["USER_SECOND_NAME"]); ?>
В /local/php_interface/init.php добавяем обработчик события OnBeforeUserRegister
<? AddEventHandler("main", "OnBeforeUserRegister", "addSecondNameOnReg"); function addSecondNameOnReg(&$arParams) { if (strlen($_REQUEST["USER_SECOND_NAME"]) > 0) { $arParams['SECOND_NAME'] = htmlspecialcharsbx($_REQUEST["USER_SECOND_NAME"]); } } ?>
В компоненте main.register отчество добавляется через параметр "SHOW_FIELDS"=>array("SECOND_NAME").
Есть вопросы или нашли ошибку? Напишите комментарий (можно без регистрации), отвечать стараюсь быстро.