发现wordpress 用户头像打了个问号,打不开了。
查看图片链接,是如:
http://1.gravatar.com/avatar/79355402bf1e5773c3624a1f2cbb7eb7?s=64&d=mm&f=y&r=g
这样的链接,就尝试把前面的1.去掉改为:
http://gravatar.com/avatar/79355402bf1e5773c3624a1f2cbb7eb7?s=64&d=mm&f=y&r=g
发现这个图片是打的开的。
于是查网络上的解决方法,很多是基于gravatar被墙,全都打不开的情况下改用别的服务器的做法,但明显现在gravatar是可以用的,只是链接有点不一样而已。
于是自己想了想,应该解决方法比较简单的。进入wordpress/wp-includes目录,查找一下包含“gravatar.com”字符串的文件在哪里:
1 2 |
$ find ./*.php |xargs grep -i "gravatar.com" -l ./link-template.php |
打开link-template.php看了看,终于在文件的3998行左右找到以下内容:
1 2 3 4 |
if ( is_ssl() ) { $url = 'https://secure.gravatar.com/avatar/' . $email_hash; } else { $url = sprintf( 'http://%d.gravatar.com/avatar/%s', $gravatar_server, $email_hash ); |
于是果断把那个%d.和后面的$gravatar_server,去掉变为:
1 2 3 4 |
if ( is_ssl() ) { $url = 'https://secure.gravatar.com/avatar/' . $email_hash; } else { $url = sprintf( 'http://gravatar.com/avatar/%s', $email_hash ); |
保存后,再刷新网页,哈哈,图片出来了: