我在标准的“创建帐户”页面中添加了一些额外的字段;特别是“确认电子邮件”字段。
如何连接验证以便我可以添加一些我自己的自定义验证规则(例如检查两封电子邮件是否匹配)?
我找到了 hook_user_presave,但不确定如何对其进行编码或将其放置在何处。
感谢任何帮助。
最佳答案
我建议安装 LoginToboggan module ,它实际上具有开箱即用的确切功能选项,并且还有许多其他有用的选项。
如果你想自己做,尽管你最好还是执行 hook_form_FORM_ID_alter()
并直接向 registration form 添加验证函数:
function mymodule_form_user_register_form_alter(&$form, &$form_state, $form_id) {
$form['#validate'][] = 'mymodule_user_register_form_validate';
}
function mymodule_user_register_form_validate(&$form, &$form_state) {
if ($form_state['values']['first_email'] != $form_state['values']['second_email']) {
form_set_error('second_email', 'The email addresses much match.');
}
}
确保在实现表单更改功能后清除 Drupal 的缓存,以便 Drupal 正确注册它。
希望对您有所帮助。
关于Drupal 7 - 确认电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8728680/