去台湾3个月后回来,发现很多网站都被Q了。比如Vimeo,Flickr,Google还有本文需要讲的Gravatar全球头像存储网站。野人部落是基于WordPress搭建的,默认评论使用的是Gravatar头像,只要你在Gravatar上注册并上传头像,然后在支持Gravatar头像的网站上输入注册邮箱进行评论就会显示评论头像。
野蛮人经过研究发现0.gravatar.com,1.gravatar.com,2.gravatar.com这几个服务器都已经被Q掉了。于是野蛮人又试了一下把头像链接前面的0.gravatar.com改成3.gravatar.com。居然可以显示头像。说明这个服务器还是没有被屏蔽的。也就是说我把其他几个头像链接服务器都改到3.gravatar.com就可以正常显示头像了。
后来,野蛮人又发现多说也有对Gravatar头像进行缓存(gravatar.duoshuo.com)。相比之下国内的缓存访问起来会快些。那么,我们只要在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 );
也可以用用3.gravatar.com进行替换,只是国内访问速度可能会有差,或者之后有继续被Q的风险。
function mytheme_get_avatar($avatar) {
$avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"3.gravatar.com",$avatar);
return $avatar;
}
add_filter( 'get_avatar', 'mytheme_get_avatar', 10, 3 );