自定义用户注册快捷代码-重定向标头问题

时间:2014-08-14 作者:user742736

我创建了一个自定义快捷码,它调用一个函数,该函数将生成一个注册页。

注册工作。这里没有问题。

我面临的问题是,在成功注册后,用户必须登录。

我明白我为什么header already sent error 是因为短代码是在标头信息之后加载的。

在短代码中重定向或登录用户的最佳方式是什么

add_action( \'user_register\', array($this,\'auto_login_new_user\'), 10);

function auto_login_new_user( $user_id ) {
    // exit($user_id);
    wp_set_current_user($user_id);
    wp_set_auth_cookie($user_id);

    wp_redirect( home_url() );
    exit;
}

1 个回复
SO网友:sakibmoon

您必须依赖javascript进行重定向。您可以在短代码中这样设置它。

 $html = "<script>
              location.href = " . $home_url() . "
          </script>";
 return $html;
它将加载页面,然后立即重定向。

结束

相关推荐

DO_ShortCode()不会返回PHP数组

我做了一个短代码[get_clients] 它应该在通过调用时返回所有客户端的数组do_shortcode(\'[get_clients]\'). 但它只返回一个字符串“Array”。为什么?