让typecho的评论者在没有gravatar头像的情况下调用QQ头像

2019-03-27T14:36:00

不是每个人都有gravatar头像,而gravatar的默认头像太太太丑了~ 评论普遍使用的QQ邮箱,这部分可以通过QQ邮箱获取评论者的QQ头像 方法如下
编辑网站根目录/var/typecho的Common.php

将932行-953(不一定每个都一样 自己甄别)修改为以下内容


 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;
    }

效果:

当前页面是本站的「Baidu MIP」版。发表评论请点击:完整版 »