Typecho更换Gravatar头像源,QQ邮箱取用qq头像教程
无论是Typecho还是WordPress,默认的Gravatar地址都是国外的,访问速度很慢,严重影响网站的访问体验,这里分享一下替换方法。
全站修改法
在网站根目录下的 config.inc.php 文件,加入以下代码。
define('__TYPECHO_GRAVATAR_PREFIX__', 'https://gravatar.loli.net/avatar/'); //更换头像源
这里使用的是 loli.net 的头像源,如果有需要也可以换成别的。
P.S 更多镜像源(直接替换上边的地址就行了)
http://gravatar.ihuan.me/avatar/
https://gravatar.proxy.ustclug.org/
https://cdn.v2ex.com/gravatar/
http://dn-qiniu-avatar.qbox.me/avatar
局部更换法
有的时候我们不需要全站替换,只是主题的。
这里分享一下替换当前主题评论的方法。
//获取Gravatar头像 QQ邮箱取用qq头像
function getGravatar($email, $s = 96, $d = 'mp', $r = 'g', $img = false, $atts = array())
{
preg_match_all('/((\d)*)@qq.com/', $email, $vai);
if (empty($vai['1']['0'])) {
$url = 'https://gravatar.loli.net/avatar/';
$url .= md5(strtolower(trim($email)));
$url .= "?s=$s&d=$d&r=$r";
if ($img) {
$url = '<img src="' . $url . '"';
foreach ($atts as $key => $val)
$url .= ' ' . $key . '="' . $val . '"';
$url .= ' />';
}
}else{
$url = 'https://q2.qlogo.cn/headimg_dl?dst_uin='.$vai['1']['0'].'&spec=100';
}
return $url;
}
上面这段代码,放当前主题的functions.php文件里,代码的意思是先对邮箱进行了判断,如果是QQ邮箱,就取QQ头像,不是的话再去gravatar取头像。
有了上面的代码,然后在需要输出头像的地方:
$email=$this->user->mail;
$imgUrl = getGravatar($email);
echo '<img src="'.$imgUrl.'" width="25px" height="25px" class="avatar hasLogin-author" >';
先获取邮箱,然后邮箱转换一下即可,其它地方如果需要,请变通。
发表评论
热门文章
Spimes主题专为博客、自媒体、资讯类的网站设计....
一款个人简历主题,可以简单搭建一下,具体也比较简单....
仿制主题,Typecho博客主题,昼夜双版设计,可....
用于作品展示、资源下载,行业垂直性网站、个人博客,....
热评文章
最新评论
Z.
11月29日
博主你好,Deng插件,这个点击不进去,提示这个(Warning: require_once(/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php): failed to open stream: No such file or directory in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26
Fatal error: require_once(): Failed opening required '/www/wwwroot/w.zzy2020.com/usr/plugins/Deng/Deng/html/profile.php' (include_path='.:/www/server/php/72/lib/php') in /www/wwwroot/w.zzy2020.com/Fresh/extending.php on line 26)
点都德
2天前
:喷::喜欢::怒::黑线: