Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么从另一个站点重定向后,用户登录返回false?_Php_Wordpress - Fatal编程技术网

Php 为什么从另一个站点重定向后,用户登录返回false?

Php 为什么从另一个站点重定向后,用户登录返回false?,php,wordpress,Php,Wordpress,我正在开发一个WordPress站点,在用户注册该站点后,它会重定向到外部支付网关。用户付款后,用户将被重定向到页面以完成注册 以下是用于重定向的代码: $login_data = array(); $login_data['user_login'] = $email; $login_data['user_password'] = $password; $login_data['remember'] = true; $user = wp_signon($login_data); if(!is_w

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

以下是用于重定向的代码:

$login_data = array();
$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;
}
用户将被重定向并填写付款表单。成功后,用户将重定向到登录页。如果未登录,则会显示未登录用户的对话框。以下是该页面上的代码:

if(is_user_logged_in()){
  $user = wp_get_current_user();
  //code for logged in users
}else{
  //message for non logged in users 
}
如果我转到帐户页面,就会显示用户已登录。但是,当从不同站点重定向为时,user\u logged\u in()返回false。如果您能深入了解这个问题,我们将不胜感激。

add_action('loop_start','your_function');
函数你的函数{
如果(用户是否已登录){
echo'
  • ; }否则{ echo'
  • ; } }
  • 请检查上面的钩子,这将为登录和未登录的用户工作