wordpress第三天

来源:互联网 发布:南邮图书馆外文数据库 编辑:程序博客网 时间:2024/06/02 13:28

现在站点的功能基本上是完全了,差不多可以考虑进行公测了(笑)。

前两天所搜集的插件基本上满足了我的要求,今天也没有安装新的插件,只是在用户接入这一点上很是纠结,最后权衡之后决定开放注册(说得就跟有人来注册一样),但是使用用户接入的方式,只支持QQ和微博两个平台的接入。这样也足够了,一是用户数量足够大,二是容易查明身份(偷笑)。微信和QQ实在容易混淆,而且申请APP ID实在太麻烦只好作罢,只用QQ和微博倒也是简洁。

于是今天的大部分时间全都花在Open Social的研(luan4)究(zuo1)上,分享功能没什么问题,主要是用户接入上,根据提供的链接我申请了微博的开发者,填写各种信息后创建应用,得到了APP ID和Secret Key,填写完毕打钩之后微博API就可以用了,使用微博登录没问题,QQ的redirect url error也就是回调地址错误让我头疼了很久,一开始以为填写不对,后来尝试了各种填写方式都不行,leoshi.me也好,leoshi.me/index.php也好,都没什么卵用。后来问了客服才知道问题出在插件上,于是硬着头皮去看php代码,竟然也能看懂一些。问题就是出在QQ_CLASS这个类上,代码如下:

class QQ_CLASS {function open_login() {$params=array('response_type'=>'code','client_id'=>osop('QQ_AKEY'),'state'=>md5(uniqid(rand(), true)),'scope'=>'get_user_info,add_share,list_album,add_album,upload_pic,add_topic,add_one_blog,add_weibo','redirect_uri'=>home_url().'?connect=qq&action=callback');header('Location:https://graph.qq.com/oauth2.0/authorize?'.http_build_query($params));exit();}function open_callback($code) {$params=array('grant_type'=>'authorization_code','code'=>$code,'client_id'=>osop('QQ_AKEY'),'client_secret'=>osop('QQ_SKEY'),'redirect_uri'=>home_url().'?connect=qq&action=callback');$str = open_connect_http('https://graph.qq.com/oauth2.0/token?'.http_build_query($params));$_SESSION['access_token'] = $str['access_token'];$str = open_connect_http("https://graph.qq.com/oauth2.0/me?access_token=".$_SESSION['access_token']);$str_r = json_decode(trim(trim(trim($str),'callback('),');'), true);if(isset($str_r['error'])) open_close("<h3>error:</h3>".$str_r['error']."<h3>msg :</h3>".$str_r['error_description']);$_SESSION['open_id'] = $str_r['openid'];}function open_new_user(){$str = open_connect_http('https://graph.qq.com/user/get_user_info?access_token='.$_SESSION['access_token'].'&oauth_consumer_key='.osop('QQ_AKEY').'&openid='.$_SESSION['open_id']);$nickname = $str['nickname'];$str = open_connect_http('https://graph.qq.com/user/get_info?access_token='.$_SESSION['access_token'].'&oauth_consumer_key='.osop('QQ_AKEY').'&openid='.$_SESSION['open_id']);$name = $str['data']['name'];//t.qq.com/***return array('nickname' => $nickname?$nickname:'Q'.time(),'display_name' => $nickname?$nickname:'Q'.time(),'user_url' => $name?'http://t.qq.com/'.$name:'','user_email' => ($name?$name:strtolower($_SESSION['open_id'])).'@t.qq.com'//fake);}}


锁定在

[php]'redirect_uri'=>home_url().'?connect=qq&action=callback'[/php]

这一句,当然这是修改后的了,原来是

[php]'redirect_uri'=>home_url('/').'?connect=qq&action=callback'[/php]

没错就是多了一个斜杠,其实都是QQ的错,改了规则,插件没更新当然只能手动改了,这也是没有办法的事情。

既然原来的登录地址只有我自己用,那我就使用某种方法给屏蔽掉了,这样的话也提高了安全性,减少了被黑的可能,今天把网址给小强,他立即就打开了登录地址,吓得我一身冷汗,他学网络安全的你懂得/微笑。

就在刚刚把SyntaxHighlighter 的行距改成了1.8,看着感觉舒心多了。

明天再稍微完善一下就可以推出了,wordpress篇也该告一段落了。

0 0
原创粉丝点击