我一直在尝试在drupal 7中的user_save之后重定向页面。我有一个使用webform进行注册过程的场景。当用户提交webform时,它应该保存为数据库中的用户并重定向到'test_page'。所以我试过了
function custom_module_webform_submission_insert($node, $submission){
$user=array(
'name'=>$submission['data'][0]['value'];
'pass'=>$submission['data'][1]['value'];
'mail'=>$submission['data'][2]['value'];
);
user_save('',$user);
drupal_goto('test_page');
}
保存用户后,页面将重定向到“/ user”页面,而不是“test_page”
答案 0 :(得分:1)
使用hook_form_alter();
使用自定义模块中的自定义提交处理程序
function myCustomModule_form_alter(&$form, &$form_state, $form_id) {
if($form_id == "user_register_form") {
$form['#submit'][] = 'my_custom_register_submit';
}
}
function my_custom_register_submit($form, &$form_state){
$form_state['redirect'] = '/test_page';
}
希望这会有所帮助