typecho评论区实现QQ头像效果

折腾1 100字数 297阅读模式

typecho系统中,评论区头像问题着实令人头疼,Gravatar官网地址在国外,一句话,太慢了,网上有关于Gravatar头像的很多插件,但都不遂人意

文章源自三无青年-https://www.duanxiansen.com/166.html

网上查了半天终于找到了一个好东西文章源自三无青年-https://www.duanxiansen.com/166.html

大多数人评论时所填的邮箱是QQ邮箱,看来,QQ还是用的人挺多的,而且很多人都没设置过Gravatar头像,主要是因为Gravatar官网进不去,太慢了,试了很多种办法,最后解决了文章源自三无青年-https://www.duanxiansen.com/166.html

修改根目录下var/Typecho/common.php,打开后在1000多行吧,或者直接搜Gravatar,找到关于获取Gravatar的代码,修改为:文章源自三无青年-https://www.duanxiansen.com/166.html

public static function gravatarUrl($mail, $size, $rating, $default, $isSecure = false)
    {
            $reg = "/^\d{5,11}@[qQ][Qq]\.(com)$/";
            if (preg_match($reg, $mail)) {
                $img    = explode("@", $mail);
                $url = "//q2.qlogo.cn/headimg_dl?dst_uin={$img[0]}&spec=100";
            } else {
                if (defined('__TYPECHO_GRAVATAR_PREFIX__')) {
                    $url = __TYPECHO_GRAVATAR_PREFIX__;
                } else {
                    $url = $isSecure ? 'https://secure.gravatar.com' : 'http://www.gravatar.com';
                    $url .= '/avatar/';
                }
                if (!empty($mail)) {
                    $url .= md5(strtolower(trim($mail)));
                }
                $url .= '?s=' . $size;
                $url .= '&r=' . $rating;
                $url .= '&d=' . $default;
            }
            return $url;
    }

这样子,它实现的效果就是:输入QQ邮箱,调用QQ头像;输入普通邮箱,调用Gravatar头像。文章源自三无青年-https://www.duanxiansen.com/166.html

文章源自三无青年-https://www.duanxiansen.com/166.html文章源自三无青年-https://www.duanxiansen.com/166.html
历史上的今天
10 月
15
 
段先森
  • 本文由 段先森 发表于 2019年10月15日 09:38:00
  • 转载请务必保留本文链接:https://www.duanxiansen.com/166.html
    • 123
      123 0

    匿名

    发表评论

    匿名网友
    :?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
    确定

    拖动滑块以完成验证