WordPress国内网站Gravatar头像不显示的解决方法
WordPress国内网站Gravatar头像不显示的解决方法
有没有一种方案能完美的解决我们的这些烦恼呢?答案是肯定的。提升Wordpress的Gravatar头像加载速度进阶的方法就是将Gravatar头像的服务器变为国内的,放在国内知名公司的服务器上或者专业的CDN服务器上。经过测试我们发现多说调用的Gravatar头像可以正常显示。猜测可能多说可能为了用户的体验而架设了一台Gravatar国内的中转服务器,那么福音来了,只需短短几行代码就可以彻底告别Gravatar被墙的困扰。
解决方法
loli国内gravatar头像缓存
直接调用这个最简单了。
以下代码放进主题目录下的functions.php文件第二行,也就是<?php的下面一行
//loli国内gravatar头像缓存
function get_ssl_avatar($avatar) {
$avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*/','<img src="https://gravatar.loli.net/avatar/$1?s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
return $avatar;
}
add_filter('get_avatar', 'get_ssl_avatar');
注:如果头像显示尺寸过大,上面代码里对应的高和宽可以改为:height="50" width="50"
本站使用镜像地址是:
https://gravatar.loli.net/
整理了另外四个cdn镜像:
极客族CDN ,使用了百度云加速+香港+日本自加速节点,访问速度没话说!推荐
极客族CDN SSL: https://sdn.geekzu.org/avatar/
七牛没国外节点,国内节点很不错。但是有个严重的问题!很多头像都被缓存成默认头像了。
七牛Gravatar: https://dn-qiniu-avatar.qbox.me/avatar/
loli.net 德国 法兰克福 + cloudflare加速节点,同官方速度不相上下
LoLi SSL: https://gravatar.loli.net/avatar/
V2EX使用的cloudflare加速节点,同官方速度不相上下
V2EX SSL: https://cdn.v2ex.com/gravata
如果放了上面代码报错,
cannot redeclaer get_ssl_avatar() (previously declared in /www/***/wp-content/themes/
可能是你的主题之前已经添加过代码了,找到对应的代码删除即可。
也可以安装插件WP-China-Yes解决
共有 0 条评论