最近发现博客的Gravatar无法正常加载,经过一方查证原来是被和谐掉了-_-||<,有点想不通……

正所谓上有政策,下有对策,有问题找度娘。于是去度娘家鼓捣了一会,发现把博客中Gravatar的源替换为多说的缓存就可以解决了。虽然不太喜欢多说插件,但是多说的Gravatar缓存还是很不错的。

下面通过修改emlog中获取Gravatar头像的函数,解决Gravatar的显示问题。

在博客 /include/lib/function.base.php 文件中,找到如下代码


/**
 * 获取Gravatar头像
 * http://en.gravatar.com/site/implement/images/
 * @param $email
 * @param $s size
 * @param $d default avatar
 * @param $g
 */

function getGravatar($email, $s = 40, $d = 'mm', $g = 'g') {
    $hash = md5($email);
    $avatar = "http://www.gravatar.com/avatar/$hash?s=$s&amp;d=$d&amp;r=$g";
    return $avatar;
}

把代码中 http://www.gravatar.com/ 替换为多说的缓存 http://gravatar.duoshuo.com/ 即可。
修改后的代码如下

... ...
function getGravatar($email, $s = 40, $d = 'mm', $g = 'g') {
    $hash = md5($email);
    $avatar = "http://gravatar.duoshuo.com/avatar/$hash?s=$s&amp;d=$d&amp;r=$g";
    return $avatar;
}

试了下,加载速度还挺快。