修复Gravatar头像默认服务器的问题

来源:伪医生律师的博客  时间:2018-01-03    阅读:   我要吐槽    阿里云幸运券

timg.jpg

这个事本来是小事,不值得单独写篇博文来记录的。但为了防止下次wordpress更新后,文件内容被替换,还是记录一下权当存档吧。

事情缘起:更换为VPS服务器后,全站启用https,在加载文章页面时发现Gravatar头像加载十分慢,有点拖后腿的感觉,于是准备更换为国内的镜像。

解决过程:开始看了几篇博文,说的是修改博客主题的函数模板(function.php),添加一段代码即可。照做后没有用处,仍旧引用的是官方https源(https://secure.gravatar.com)。折腾了很久,打算放弃的时候,大致留言说我可能没改对地方。再次在浩瀚的互联网搜索,终于,找到知更鸟的这篇文章,里面提到:

WP4.2之后版本,打开wordpress程序目录的wp-includes文件夹,打开link-template.php,将大约第3604行的:

  1. $url = sprintf( 'http://%d.gravatar.com/avatar/%s'$gravatar_server$email_hash ); 

修改为:

  1. $url = sprintf( 'http://cn.gravatar.com/avatar/%s'$email_hash ); 

经过我实际测试、修改,应该是在3992行左右的如下代码:

  1. if ( is_ssl() ) { 
  2.         $url = 'https://secure.gravatar.com/avatar/' . $email_hash
  3.     } else { 
  4.         $url = sprintf( 'http://%d.gravatar.com/avatar/%s'$gravatar_server$email_hash ); 

将https打头的地址改为你喜欢的国内镜像地址即可(我用的是极客族的公共加速服务 ,也就是将上述代码中的secure.gravatar.com/avatar 修改为sdn.geekzu.org/avatar)。

Tags:头像  服务器  问题  

参与讨论