Как сделать так, чтобы электронная почта пользователя не требовалась при регистрации в drupal 7? - PullRequest
3 голосов
/ 10 мая 2011

Как сделать электронную почту пользователя необязательной (необязательной) при регистрации в drupal 7?

Ответы [ 4 ]

2 голосов
/ 13 марта 2014

Я смог сделать пользовательский модуль.Это действительно похоже на sharedemail.

<?php
function noemail_form_user_register_form_alter(&$form, &$form_state, $form_id) {
  noemail_form_user_account_form_alter($form, $form_state, $form_id);
}
function noemail_form_user_profile_form_alter(&$form, &$form_state, $form_id) {
  noemail_form_user_account_form_alter($form, $form_state, $form_id);
}
function noemail_form_user_account_form_alter(&$form, &$form_state, $form_id) {
  if (is_array($form['#validate'])) {
    $key = array_search( 'user_account_form_validate', $form['#validate'], TRUE );
    if ( $key !== FALSE ) {
      $form['#validate'][$key] = 'noemail_account_form_validate';
    }
  }
    $form['account']['mail']['#required'] = FALSE;
}
function noemail_account_form_validate($form, &$form_state) {
    $form['account']['mail']['#needs_validation'] = false;
}

и установочный файл на тот случай, если его ключ

<?php
function sharedemail_install() {
  db_query("UPDATE {system} SET weight = -99 WHERE name = 'noemail'");
}

Надеюсь, это поможет, вау, это действительно старая темаОх, и обратите внимание, это для d7

1 голос
/ 29 марта 2015

Существует дополнительный почтовый модуль, который делает поле электронной почты необязательным при регистрации пользователя.Посетите https://www.drupal.org/project/optional_mail, надеюсь, это поможет.

1 голос
/ 29 сентября 2011

Вы не можете изменить другой хук проверки.

То, что вы можете попытаться сделать, это создать свою собственную проверку и на основе массива проверки этой формы (['#validate']) только создать свою собственную ловушку проверки.

0 голосов
/ 10 мая 2011

Вы можете переопределить # обязательную настройку для поля, используя Form API внутри пользовательского модуля с реализацией hook_form_alter .

...