如何在user_save之后重定向用户?

时间:2015-09-29 19:44:32

标签: php drupal-7

我一直在尝试在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”

1 个答案:

答案 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';
}

希望这会有所帮助