欢迎来到好人卡资源网,专注网络技术资源收集,我们不仅是网络资源的搬运工,也生产原创资源。寻找资源请留言或关注公众号:烈日下的男人

Typecho更换头像源及显示QQ头像

网站源码 sky995 1年前 (2022-11-20) 409次浏览 0个评论

本文及资源最后更新时间 2022-11-20 by sky995

Typecho默认使用的是Gravata头像,Gravatar大多数的链接在国内都被墙了,加载失败不说,还影响博客加载速度。

这里记录一下通过修改程序源码来替换Gravatar头像地址为国内比较快的头像源,并且添加QQ邮箱头像获取,显示QQ头像,达到更好的体验。

更换Gravatar头像源方法:
找到网站根目录下的config.inc.php文件,加入以下代码。

define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.loli.net/avatar/'); //更换头像源

这里使用的是loli.net的头像源,如果有需要也可以换成别的。

添加获取QQ邮箱头像方法:
打开目录 var/Typecho/common.php
在826行左右 找到以下代码

Typecho更换头像源及显示QQ头像

将其替换成:

 

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头像。


好人卡资源网 , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权
转载请注明原文链接:Typecho更换头像源及显示QQ头像
喜欢 (0)
发表我的评论
取消评论

表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址