WordPress头像无法显示的两种解决办法
来源:wordpress
作者:
2020-06-04
最近遇到wordpress的头像在国内一直显示不出来,问题发生在wordpress 3.0以上,wordpress的头像服务Gravatar 的部分服务器在国内访问困难, 原因是Gravatar所使用的 edgecast CDN服务遇到了某些问题。
wordpress 3.0通过读取缓存服务器的方式, 减少了对www.gravatar.com的直接请求; 以往直接读取官方服务器。现在都被分流到0.gravatar.com,1.gravatar.com等缓存服务器上了,这次遇上CDN故障,所以就出现 了无法读取头像的问题。
解决办法一:插件
只需修改 Gavatar 头像的访问方式, 直接请求官方服务器即可。 一些热心网友已经找到问题, 并给出了解决方案。 而现在有更方便的解决办法, 插件。Gravatar Fixed插件通过函数覆盖的方式,重新自定义Gravatar服务器,直接访问www.gravatar.com读取头像,以保证正常访问。
下载链接: gravatar-fixed.zip
解决办法二:代码
“0.gravatar.com”这个网址无法访问了,“www.gravatar.com”这个主页还可以正常访问。那么我们可以修改自己的wordpress,让它从“www.gravatar.com”获取用户的头像解决这个问题:
找到“wp-includes/pluggable.php”文件,找到代码:
12345678if
( is_ssl()) {
$host
= ‘https:
//secure.gravatar.com’;
}
else
{
if
(!
empty
(
))
$host
= sprintf(http:
//%d.gravatar.com,(hexdec( $email_hash{0} )% 2 ));
else
$host
=
'http://0.gravatar.com'
;
}
替换为:
1234if
( is_ssl())
$host
=
'https://secure.gravatar.com'
;
else
$host
=
'http://www.gravatar.com'
;
OK,现在头像就可以访问了!本人喜欢用代码,尽量无插件。