当前位置:首页 > 代码学苑 > 网建教程

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插件, 解决 <a href=http://m.iyoucaihua.com/e/search/result/?searchid=135 target=_blank class=infotextkey>wordpress</a> 头像无法显示的问题

下载链接: gravatar-fixed.zip

 

解决办法二:代码

“0.gravatar.com”这个网址无法访问了,“www.gravatar.com”这个主页还可以正常访问。那么我们可以修改自己的wordpress,让它从“www.gravatar.com”获取用户的头像解决这个问题:

找到“wp-includes/pluggable.php”文件,找到代码:

1
2
3
4
5
6
7
8
if ( is_ssl()) {
$host = ‘https://secure.gravatar.com’;
else {
if (!empty($email))
$host = sprintf(http://%d.gravatar.com,(hexdec( $email_hash{0} )% 2 ));
else
$host 'http://0.gravatar.com';
}

 

替换为:

1
2
3
4
if ( is_ssl())
$host 'https://secure.gravatar.com';
else
$host 'http://www.gravatar.com';

 

OK,现在头像就可以访问了!本人喜欢用代码,尽量无插件。


相关栏目:
猜你喜欢
点击查看更多