WP 优化

WordPress 输入QQ号自动获取用户名及邮箱

3周前 (10-04)   239  

WordPress 输入QQ号自动获取用户名及邮箱

再给大家分享一个好用的小功能。评论区输入QQ号自动获取用户名及邮箱,功能不大但确实有利于增加博客留言的积极性。

1. 自建API获取QQ信息

新建一个 PHP 文件,将下面代码丢进去,文件名可自取,这里以 get_qq_info.php 命名。创建完成后将 get_qq_info.php 文件丢到网站根目录下以用于以后调取,也可以将它放在任何一个目录下,只需要保证后面 JS 代码调取是路径正确即可。

<?php 
header('Content-Type: text/html;charset=utf-8');
    $QQ=$_GET["qq"];
    if($QQ!=''){
        $urlPre='http://r.qzone.qq.com/fcg-bin/cgi_get_portrait.fcg?g_tk=1518561325&uins=';
        $data=file_get_contents($urlPre.$QQ);
        $data=iconv("GB2312","UTF-8",$data);
        $pattern = '/portraitCallBack\((.*)\)/is';
        preg_match($pattern,$data,$result);
        $result=$result[1];
        echo $result;
    }else{
        echo "请输入qq号!";
    }
?>

这里其实还是通过腾讯开放的接口获取到 QQ 用户的真实昵称。

2. JavaScript脚本调用API

将以下代码添加到主题的主要 JS 文件中去,如果主题支持后台自定义代码也可以直接放在后台自定义代码位置。

function fn_qqinfo(){
    var qq_num=$('#qqinfo').val();
    if(qq_num){
        if( !isNaN(qq_num)){
        $.ajax({
        url:"http://您的地址/get_qq_info.php",    //如果网站开启了HTTPS,记得这里要修改成https的链接
        type:"get",
        data:{qq:qq_num},
        dataType:"json",
            success:function(data){
                $("#email").val(qq_num+'@qq.com');
                $('#comment').focus();
                if(data==null){
                $("#author").val('QQ游客'); 
                }else{
                $("#author").val(data[qq_num][6]==""?'QQ游客':data[qq_num][6]);
                } 
            },
            error:function(err){
                $("#author").val('QQ游客');
                $("#email").val(qq_num+'@qq.com');
                $('#comment').focus();
            }
        });
        }else{
            $("#author").val('你输入的好像不是QQ号码');
            $("#email").val('你输入的好像不是QQ号码');
        } 
    }else{
         $("#author").val('请输入您的QQ号');
         $("#email").val('请输入您的QQ号');
    }
}
注意:如果网站开启 HTTPS 的话将上述代码中链接改为对应的 https 格式。
3. 前端显示代码

将以下代码添加到你主题的 comments.php 文件中:

<input class="您主题的对应样式" type="text" name="qqinfo" id="qqinfo" maxlength="12" value="" tabindex="5" placeholder="输入QQ号快速填写信息" onblur="fn_qqinfo()" /><span class="您主题的对应样式" >Q Q(选填)</span>
4. 具体效果见本博客留言区

也欢迎大家踊跃留言。

版权声明:Jakehu 发表于 2020-10-04 11:59:13。
转载请注明:WordPress 输入QQ号自动获取用户名及邮箱︱Jakehu

您可能感兴趣的

3 条评论

  • 2broear ( VIP 4 )

    回复

    这个 urlPre 还能返回qq昵称,真不错!

    • 回复

      还有个好玩的小功能,我的博客右下角新加入了一个随便看看的按钮,每次点击都随机打开一篇文章,找到配图后也发出来。

      • 2broear ( VIP 4 )

        回复

        这玩意得php拉文件名不,js搞不起