站长图库

WordPress怎么实现评论自动填写QQ邮箱与昵称?

 发布时间 2019-12-31 12:43:58 热度  64

 Tag标签:  WordPress自动填写
广告
广告
广告
广告
广告
广告

WordPress评论自动填写QQ邮箱与昵称这个功能很鸡肋呀,以至于我虽然留了位置,但没写功能。不过最近有人问了这个事,还是写篇教程出来吧。功能实现主要是通过腾讯的查询接口实现的,不过在2018年7月的时候出现了一次接口失效的情况,现在大部分获取昵称的接口都是用的QQ空间的,至于邮箱,直接在QQ号后面加上@qq.com就行了。

先把下面的接口保存为PHP文件,放在你的网站中,确保能被访问,之所以写成接口是为了避免跨域请求。

<?php 
header("content-Type:application/json; charset=utf-8"); 
$type = @$_GET['type'] ? $_GET['type'] : ''; 
if(empty($type)){ exit; } 
if($type == "getqqnickname"){ 
    $qq = isset($_GET['qq']) ? addslashes(trim($_GET['qq'])) : ''; 
    if(!empty($qq) && is_numeric($qq) && strlen($qq) > 4 && strlen($qq) < 13){ 
        $qqnickname = file_get_contents('http://users.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?uins='.$qq);
        if($qqnickname){ 
            $qqnickname = mb_convert_encoding($qqnickname, "UTF-8", "GBK"); $str=explode(",",$qqnickname); $s=str_replace('"','', $str[6]); print_r(json_encode(array("nicek"=>$s)));
        }
    }
}
if($type == "getqqavatar"){
    $qq = isset($_GET['qq']) ? addslashes(trim($_GET['qq'])) : '';
    if(!empty($qq) && is_numeric($qq) && strlen($qq) > 4 && strlen($qq) < 13){
        $qqavatar = file_get_contents('http://ptlogin2.qq.com/getface?appid=1006102&imgtype=3&uin='.$qq);
        if($qqavatar){
            $str= str_replace("pt.setHeader","qqavatarCallBack",$qqavatar);
            echo substr($str,17,strlen($str)-18);
        }
    }
}

上面的接口中我只取了昵称这个数据,如果你需要头像链接也可以取出来,至于怎么取数据我就不多说了,方法多种多样,看自己喜好。需要注意的是头像也是QQ空间的头像。当然你也可以通过后面的接口取头像,这个就是QQ的头像。

然后在你的主题全局加载的js中写上下面的js代码。注意jquery选择器选择的HTML标签,根据你自己的改一下。

$("#comt-qq").blur(function() {
    var curValue = $("#comt-qq").val();
    if ($.trim(curValue) == "") {
        //空值
    } else {
        $("#email").val(curValue + "@qq.com");
        getQQnic(curValue);
    }
});
function getQQnic(num) {
    $.get("你的接口文件地址(就是上面的代码保存的文件).php?type=getqqnickname&qq=" + num, function(data) {
        $("#author").val(data.nicek);
    });
}

只要没有语法问题,应该就可以看到效果了,填完QQ号之后,点击其它区域,取消掉输入QQ号的编辑框的焦点就会自动查询并填写相关资料。有的人需要把QQ号也存到评论信息里,不知道想干嘛,完全没有意义。当然要实现也很简单,使用wordpress的函数给评论增加一个字段,然后在评论提交处将评论数据中传来的QQ号一起提交就好了。


站长图库

站长素材 - 建站资源分享平台

猜你喜欢
帝国CMS灵动标签调用当天更新的标题文字显示红色其他颜色变成灰色

帝国CMS灵动标签调用当天更新的标题文字显示红色其他颜色变成灰色

CMS教程 347 2019-04-15

帝国CMS灵动标签当天更新的标题显示红色其他颜色变成灰色[e:loop={'news',8,1...

TAG:园艺wordpress博客模板

WordPress后台出现多篇英文文章

WordPress后台出现多篇英文文章

CMS教程 112 2019-12-10

有不少使用WordPress建站的站长反映,自己用Wordpress程序建立好网站之后,过几天发现自己网站后台...

TAG:园艺wordpress博客模板

WordPress 5.0 如何换回原有”Classic Editor”编辑器?

WordPress 5.0 如何换回原有”Classic Editor”编辑器?

CMS教程 811 2018-12-29

WordPress 5.0 如何换回原有”Classic Editor”编辑器详细教程WordPre...

TAG:园艺wordpress博客模板

帝国cms防止恶意注册 会员空间发布违规违禁信息

帝国cms防止恶意注册 会员空间发布违规违禁信息

CMS教程 56 2020-01-01

帝国cms防止恶意注册 会员空间发布违规违禁信息,最近接到用户的反馈:收录的内容出现了类似地址,域名/e/sp...

TAG:园艺wordpress博客模板