一步解决wordpress3.0 gravatar头像不能显示
- 发布在 也说技术
- 2010, 十月 16
最近Gravatar的某些服务器不幸被墙,很多童鞋的博客里头像只剩下一片空白,但是有些还是可以显示的,除去之前已经使用了本地缓存的朋友,可以显示的地址都是以www开头的,以数字开头的很多服务器已经无法使用。wordpress是在3.0之后才更新了调用Gravatar头像的代码。
2.9之前的代码没有进行选择,是这样的:
HTML,ifeiyang.cn
if ( is_ssl() ) $host = 'https://secure.gravatar.com'; else $host = 'http://www.gravatar.com';Parsed in 0.004 seconds at 22.78 KB/s
而3.0之后增加了对服务器的一些判断,这样本意是为了提高头像载入速度,结果还是架不住我们的伟大的墙啊!现在,我们只需要做一些简单的修改,使用www开头的地址展示我们的头像即可。
3.0之后的代码,在wp-includes文件夹下 pluggable.php 文件,大约1645行。将下面的代码
HTML,ifeiyang.cn
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'; }Parsed in 0.004 seconds at 49.98 KB/s
改为2.9之前的代码就能解决问题。
然而这样的解决是治标不治本的,因为谁都不能保证我们的墙会不会再次大发神威,连www.graatar.com一并屏蔽,而且还修改了wordpress的源文件,老饕一贯是不建议这样修改的。所以还是建议大家尽量使用头像本地缓存,几千个头像也就几M而已,速度上没有任何问题,具体可以参看我之前的文章:wordpress速度优化之缓存Gravatar头像。
MS有些博客行有些博客不行,不知道怎么搞得,我有事一个软件盲…
[点击回复]
老饕 回复:
二月 14th, 2011 at 10:31 上午
@冬雨, 没有问题吧?~~干脆本地缓存~~
[点击回复]
@爱惜, 好吧~~我今天从垃圾评论里把你拣出来了~~估计你到其他人那儿留言也是这样的情况~~囧了
[点击回复]
貌似我留言都不能显示?
[点击回复]
还好我没升级WP
[点击回复]
老饕 回复:
十月 22nd, 2010 at 1:32 下午
@huangjun, 我也没升~~新功能现在还用不着~
[点击回复]
loo2k开发了一个插件。可以去我的博客那里下。
[点击回复]
老饕 回复:
十月 22nd, 2010 at 1:45 下午
@wangfeng, 呵呵,道理是一样的~~自己改了之后还少一个插件~
[点击回复]
SOHO一族 回复:
十月 24th, 2010 at 10:56 下午
@老饕, 俺也用的插件,方便
[点击回复]
老饕 回复:
十月 22nd, 2010 at 1:45 下午
@wangfeng, 其实采用本地缓存是最简单带方法~
[点击回复]
最治本的方法是离开兲朝www
[点击回复]
我昨天也是这么改成功的
[点击回复]
呵呵,我也是这样解决的。
[点击回复]
看来我今天,还真没走错地方了。
不多说,我用上了。
嘿,谢谢
[点击回复]
老饕 回复:
十月 22nd, 2010 at 1:56 下午
@牛奶我不喝, 推介使用本地缓存,难保www也被屏掉!
[点击回复]
恩,这个gravatar头像被墙,关键字很火~
[点击回复]
老饕 回复:
十月 22nd, 2010 at 1:56 下午
@途途, 呵呵,你竟然关注关键词!你从哪儿看的啊?是百度指数吗?
[点击回复]
途途 回复:
十月 22nd, 2010 at 2:30 下午
@老饕, 是的,指数很高~
[点击回复]
昨天也出现这个问题。先前还以为空间问题。看来用3.0以上版本的人还蛮多的。
[点击回复]
老饕 回复:
十月 22nd, 2010 at 2:01 下午
@爱惜, 我还在用2.9.2~等年末的3.1吧!
[点击回复]
爱惜 回复:
十月 25th, 2010 at 8:22 下午
@老饕, 怎么我的留言都不能显示?
[点击回复]
还是你的方法好
[点击回复]
老饕 回复:
十月 22nd, 2010 at 2:10 下午
@云崧, 推介使用本地缓存~~真正一劳永逸!
[点击回复]
终于有人出面解决这个问题了~
我以前都是用老版本的文件替换,但是会有一些其他的副作用~很不爽
[点击回复]
老饕 回复:
十月 22nd, 2010 at 2:10 下午
@exia, 要改的也就一两行的代码~
[点击回复]
exia 回复:
十月 23rd, 2010 at 8:07 下午
@老饕, 今天发现,好像解除对gravatar的墙了~头像可以正常显示了呢
[点击回复]
在天朝,缓存是必须的
[点击回复]
老饕 回复:
十月 22nd, 2010 at 2:12 下午
@荒野无灯, 同意啊!!!!
[点击回复]
[点击回复]
老饕 回复:
十月 16th, 2010 at 4:29 下午
@IM路人, 呵呵,所以一定把wordpress本地化掉~
[点击回复]
这个也要墙,是不是墙疯了,太操蛋了。去修改一下看看。
[点击回复]
老饕 回复:
十月 16th, 2010 at 4:37 下午
@SErHo, 还是缓存本地省心~~
[点击回复]
墙已经塌了
[点击回复]
老饕 回复:
十月 16th, 2010 at 4:38 下午
@不纯粹文人, 好吧~~难保它不会再建起来!
[点击回复]
照着第一种方法。。出问题了。。不知道咋的原因。。因为头像又恢复了。。淡疼的WP。。。
[点击回复]
老饕 回复:
十月 16th, 2010 at 4:39 下午
@gorgons., 应该不会吧~~要不然在把 if ( !empty($email) ) 这个判断加上去?应该无所谓的~
[点击回复]
gorgons. 回复:
十月 16th, 2010 at 6:52 下午
@老饕,
淡疼的墙。。要不是墙的存在我们哪这么麻烦。。。
[点击回复]
gorgons. 回复:
十月 17th, 2010 at 11:12 上午
@gorgons., 发现了,你这里的教程里,2.9的代码,最后应该再加一行,加上},或者把3.0的最后一行,也就是}去掉。。。不然网页无法显示
[点击回复]
老饕 回复:
十月 17th, 2010 at 11:19 上午
@gorgons.,因为 else只有一行,所以不需要括号~~替换的时候视具体情况吧~
[点击回复]
[点击回复]
老饕 回复:
十月 16th, 2010 at 4:41 下午
@Google不爱我, 恩,我属于一次改彻底~
[点击回复]