У меня есть сайт, где некоторые пользователи будут зарегистрированы нашими сотрудниками, и с ними не будут связаны электронные письма. Я хотел бы оставить поле электронной почты обязательным для заполнения, поэтому я разработал генератор случайной электронной почты.
function generateRandomEmail() {
$email = 'noemail'. rand(0,1000000) . '@noemail.com';
return $email;
}
Итак, я прикрепил это к форме регистрации пользователя alter, и она отлично работала, эффективно создав электронное письмо для этих пользователей.
Однако при этом все остальные поля, связанные с основным разделом учетной записи (пароль, имя пользователя, уведомление и т. Д.), Исчезли. Мой вопрос, есть ли быстрый способ заполнить остальные поля, которые я не хочу изменять? Я использовал drupal_render ($ form); в tpl.php, но он не работал в форме изменить.
Вот где я изменяю форму:
function accountselect_user($op, &$edit, &$account, $category) {
if ($op == 'register') {
$fields['account']['mail'] = array(
'#type' => 'textfield',
'#default_value' => generateRandomEmail(),
);