我想要实现的是,用户登录我的wordpress网站并登录vanilla论坛,我在vanilla论坛中安装了jsconnect插件,并使用以下位置jsConnectPHP的php的jsconnect库
这是我的代码:
require_once('functions.jsconnect.php');
$clientID = "1501569466";
$secret = "xxxxxxxxxxxxxxxxxxxxxx";
$userD = array();
if( isset($_POST['log']) ){
$data = array();
$data['user_login'] = $_POST['u_user'];
$data['user_password'] = $_POST['u_pass'];
$data['remember'] = TRUE;
$user = wp_signon($data, FALSE);
if(!is_wp_error($user)){
$userD['uniqueid'] = $user->ID;
$userD['name'] = $user->user_login;
$userD['email'] = $user->user_email;
$userD['photourl'] = '';
$secure = true;
WriteJsConnect($user, $_GET, $clientID, $secret, $secure);
$redirect = "http://localhost/vanilla/entry/jsconnect?client_id={$clientID}";
echo "<script>document.location.href='".$redirect."';</script>";
}
}
当用户登录wordpress时,我将其重定向到vanilla中的jsconnect url,我只发现了一张进度图像,并且无法弄清楚问题出在哪里..
答案 0 :(得分:1)
jsconnect身份验证网址需要jsonp
数组,如下所示:
test({"email":"test@test.com",
"name":"testuser",
"photourl":"",
"uniqueid":1234,
"client_id":"12345678",
"signature":"XXXX"})
您在jsconnect中指定的授权URL应该看到此输出进一步处理。事实上,我被困在那一点上。我可以看到vanilla论坛在加载时获得此输入但没有登录。