开发者社区> 问答> 正文

从另一个站点重定向后,为什么is_user_logged_in()返回false?

我正在开发一个WordPress网站,在用户注册该网站后,该网站将重定向到外部支付网关。用户付款后,用户将被重定向到页面以完成其注册。

这是用于重定向的代码:

$login_data['user_login'] = $email;
$login_data['user_password'] = $password;
$login_data['remember'] = true;
$user = wp_signon($login_data);
if(!is_wp_error($user)){
    wp_set_current_user( $user->ID, $email );
    wp_set_auth_cookie( $user->ID, true, false );
    wp_redirect("https://another_payment_gateway.com");
    exit;
}

用户将被重定向并填写付款表格。成功后,用户将被重定向到登录页面。如果未登录,则会显示未登录用户的对话框。这是该页面上的代码:

  $user = wp_get_current_user();
  //code for logged in users
}else{
  //message for non logged in users 
}

如果我转到帐户页面,则表明该用户已登录。但是当从其他站点重定向时,is_user_logged_in()返回false。任何对此问题的见解将不胜感激。

展开
收起
社区秘书 2019-11-19 14:32:40 607 0
0 条回答
写回答
取消 提交回答
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载