半夏凉歌   还在忙吗,别忘了给自己一个微笑。   2022-06-28

Gravatar头像已经成为了博客、论坛等一种非常流行的通用头像,不管是Wordpress还是Z-Blog、Typecho、Emlog等,留言或者登录注册等都支持Gravatar头像,拥有一个Gravatar头像已经成为草根博主一种必选项目。
每位留言者根据自己的邮箱会显示不同的Gravatar头像,如果一篇文章的留言者非常多,比如几百个以上,就会显示几百个Gravatar头像图片,图片越多,HTTP请求也就越多,容易导致网页加载缓慢、网站出现打不开的现象。
另外一个不容忽视的问题是Gravatar头像的服务器全部位于国外,由于受到各种因素的影响,有时国内是无法连接到Gravatar头像服务器上,也就是无法显示Gravatar头像,大量的无法显示的图片会导致网页直接打不开。
基于以上两个原因,部落已经看到了不少的有名气的博客已经取消了显示Gravatar头像,目的就是为了最大限度地加快网页的加载速度,毕竟在浏览网页内容和留言两者之间,获取网页内容才是第一位的,评论只是一种交互方式。

最有效简单的方法利用多说Gravatar头像国内镜像服务器实现缓存加速

方法的原理是:官方的Gravatar 头像所在的路径一般都是www.gravatar.com、0.gravatar.com、1.gravatar.com、2.gravatar.com 这四个,我们只需要将头像默认的URL换成多说的就行了。

打开主题下的functions.php 文件,将以下代码复制粘贴保存即可。

function mytheme_get_avatar($avatar) {
    $avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"gravatar.duoshuo.com",$avatar);
    return $avatar;
}
add_filter( 'get_avatar', 'mytheme_get_avatar', 10, 3 );

Gravatar 头像的外链地址已经全部到了多说的国内服务器了。