3

我正在开发一个将 Drupal 连接到外部 Web 服务的模块。当用户注册时,我希望他在 Web 服务中注册,而不是在 Drupal 中。我想覆盖提交 user_register 表单时调用的提交函数。

我已经使用 $form['#submit'],但它不起作用。

还有其他解决方案吗?我正在使用drupal7。

我是这样用的

function mymodule_form_user_register_form_alter(&$form, &$form_state, $form_id) { 
$form['account']['name']['#title'] = t('Full name'); // perform other changes here 
$form['#submit'][] = 'mymodule_user_register_form_submit' 
} 
4

1 回答 1

3

当你使用

$form['#submit'][] = 'mymodule_user_register_form_submit' 

您实际上并没有覆盖提交模块。您是说在执行所有其他模块(在我之前运行的)创建的提交函数之后,还要执行我的函数mymodule_user_register_form_submit

如果您想覆盖提交功能,请使用类似的东西$form['#submit'] = 'mymodule_user_register_form_submit'来确保您的功能是唯一将被执行的功能。

于 2012-11-23T20:08:48.243 回答