WordPress 3.x无法读取Gravatar头像服务的解决办法

2015-06-03 09:40:33来源:威易网作者:微部落博客

网上查了下问题发生在WordPress 3.0 以上,WordPress 的头像服务 Gravatar 的部分服务器在国内访问困难,原因是 Gravatar 所使用的 edgecast CDN 服务遇到了某些问题,WordPress 3.0 通过读取缓存服务器的方式,减少了对 www.gravatar.com 的直接请求……

老实说,学做网站,我是半调子出身,对高深的编程、代码依旧是云里雾里。甚至有时候HTML代码都需要边查边写。

不过好在我喜欢折腾,微部落博客就是在我的折腾下维持了三年多的时间。

在逛其他站长博客圈的时候,我经常发现很多新的功能,然后我会想着如何在我的网站实现,于是我会百度,我会向各位站长朋友请教。这本身就是一种学习和进步。

在卢松松博客上我看到了博客导航,所以我也给自己的微部落博客增加了微部落博客大全,不是说有着要发展多大的野心,我只是图一个方便,方便我去各个博客看看,顺便也能记录来我这儿做客的站长朋友。去路来路统计功能,一目了然。

在博客123上看到了评论排行榜,其实微部落博客本身也有排行,只是一直没用心发展,在看来博客123后,才发现,原来激励的评论系统能让大家有那么大的兴趣,于是我又把这个排序拿了出来,并将代码添到首页。

然后今天,我又折腾起了头像,这是个老话题。关于WordPress头像设置的办法有很多。微部落博客之前一直安装着多说,这个社会化评论系统的确方便,头像之类设计也很是人性化。只不过后来出于安全方面的考虑,微部落博客卸载了多说,然后就发现系统自身的头像都无法正常显示。显示的都是破图。

网上查了下问题发生在WordPress 3.0 以上,WordPress 的头像服务 Gravatar 的部分服务器在国内访问困难,原因是 Gravatar 所使用的 edgecast CDN 服务遇到了某些问题,WordPress 3.0 通过读取缓存服务器的方式,减少了对 www.gravatar.com 的直接请求;以往直接读取官方服务器,现在都被分流到 0.gravatar.com, 1.gravatar.com 等缓存服务器上了,这次遇上 CDN 故障,所以就出现了无法读取头像的问题。

好了知道原因是,是服务器方面的因素,那么解决办法呢?网上也有很多,只不过有的太麻烦,有的根本不适用,下面将微部落博客采用的办法说下:

在functions.php的<?php后添加代码:

/* 调用头像 */
function get_ssl_avatar($avatar) {
$avatar = preg_replace(‘/.*/avatar/(.*)?s=([d]+)&.*/’,‘<img src=”https://secure.gravatar.com/avatar/$1?s=$2″ class=”avatar avatar-$2″ height=”$2″ width=”$2″>’,$avatar);
return $avatar;
}
add_filter(‘get_avatar’, ‘get_ssl_avatar’);

然后需要调用头像处的代码为:

$avatar = get_avatar( $comment->comment_author_email, $size = ’25′, $default=   get_bloginfo(‘wpurl’).’/avatar/default.jpg’ );

当然网上还有别的办法,比如调用多说服务器的头像,比如直接修改wp-includes/pluggable.php文件的,至于效果怎么样,我没有一一尝试,有兴趣的朋友可以去试试。

关于怎么注册设置Gravatar头像,这里不说了,网上一大堆。

投稿来源:微部落博客www.vprol.com(QQ号:105797233)
关键词:WordPressGravatar