Изменение формы регистрации

8

Я хотел бы пересмотреть форму регистрации нового пользователя по умолчанию в Drupal 7. Вместо того, чтобы требовать «имя пользователя», я хочу запросить «полное имя» с инструкциями помощника для ввода текста «имя пользователя - это ваше полное имя, как вы обычно его используете» «.

Могут быть и другие незначительные изменения форматирования, которые я хотел бы также внести.

Я не могу найти пункт меню администратора, чтобы получить доступ к чему-либо, касающемуся этого вопроса. И я не могу найти файл в каком-либо директоре, в котором есть какой-либо текст, который бы указывал, что он является источником для новой формы регистрации пользователя.

Я понимаю, что это немного нетрадиционно, но это полезно для наших нужд. Мне известен модуль, который позволяет вводить имя / фамилию, но при обработке он меняет ввод на имя инициала / фамилию, т. Е. Tom Thumb = имя пользователя «tthumb». Модуль "Регистрация реального имени" был бы именно тем, что я искал, если бы он переводил только имя пользователя, такое же, как ввод.

Это не обязательно решит другие изменения форматирования, но я был бы очень рад, если бы у меня была возможность вручную редактировать текст справки формы регистрации в поле имени пользователя, инструктируя нового пользователя регистрироваться, используя свое настоящее имя.

Спасибо за любую помощь, которую вы можете предоставить.

JM

Дж. М. Фостер
источник

Ответы:

13

Самый простой способ - создать собственный модуль и использовать hook_form_alter () :

function mymodule_form_alter(&$form, &$form_state, $form_id) {
  if ($form_id === 'user_register_form') {
    $form['account']['name']['#title'] = t('Full name');
    // perform other changes here
    // var_dump() or krumo() the contents of $form to see what you can change
  }
}

Если вы предпочитаете, вы также можете использовать вариант hook_form_alter для целевого отображения формы, вместо того, чтобы делать if

function mymodule_form_user_register_form_alter(&$form, &$form_state, $form_id) {
  $form['account']['name']['#title'] = t('Full name');
  // perform other changes here
}
Алекс Вебер
источник
Как я могу установить значение поля Password? я не могу найти структуру
xstean
Форма одинакова для регистрации администратора и гостя. Чтобы определить, является ли это формой администратора «Создать пользователя» или форма регистрации, вы можете использовать user_is_anonymous().
Милковский