Dragon
  • 本博客商城免登录支付购买BUG已经修复恢复正常,谢谢您的惠顾!
  • 注册、登陆后即可全站无广告畅快浏览本博客了!
  • 本博客已开启支持百度AI智能内容自动审核机制!
明月登楼明月登楼  2017-02-11 12:00 明月登楼的博客 隐藏边栏 |   42 条评论  13,323 
文章评分 0 次,平均分 0.0
导语: 最后就是体验博客载入速度了,如果你是七牛付费用户还可以给头像缓存的七牛空间开启融合 CDN ,这样头像调用会选择离你最近、速度最快的节点链接,这样就可以避免 Gravatar 被“墙”以来头像总是获取失败和载入龟速的尴尬了,也算是变相的给我们的 WordPress 提了速!话说也不知道啥时候 WordPress 才会考虑在国内架设服务器,但愿这个愿望可以实现。

推荐给大家的 WordPress 本地缓存神器 WP-Rocket 普遍都反应非常的好,请参考【推荐一个 WordPress 本地缓存的神器: WP-Rocket 插件』一文。明月是个强迫症重度患者,对于 WordPress 载入时间缓慢一直都受不了,这个 WP-Rocket 总算是解决了 WordPress 后台载入龟速的“顽疾”,最后就是评论的 Gravatar 头像问题了,虽然鸟哥主题 Begin 支持切换 Gravatar 服务器,但是无论哪个服务器都没有稳定过,国内多说的稳定性还不如“墙外”的 SSL 服务器呢!

博客本身评论比较多,如果文章评论量超过 30 条后,就严重影响文章的载入时间了。所以给 Gravatar 头像 原理其实很简单,就是借助七牛云的“对象存储”拉取 Gravatar 的 SSL 服务器(当然也可以使用多说服务器)上的头像图片转存到七牛空间来实现,如果再在“对象存储”空间上再开启七牛云的融合 CDN 的话那就超级完美了,当然不使用 CDN 单就七牛空间的速度也比原有的强出了很多。下面给大家具体的实现方法,整体下来最多 20 分钟就可以搞定了:

[link href='https://portal.qiniu.com/signup?code=3la4hl87ku7o2']直达申请注册七牛云[/link]

首先,当然是注册个七牛云账号并通过实名认证了,然后登陆七牛云账号新建一个“对象存储”空间,空间名字可以任意英文组合即可,镜像源要设成 https://secure.gravatar.com/以便拉取 Gravatar 官网的头像图片(当然你也可以设定成多说 Gravatar 头像服务器地址),如下图: 然后根据自己 WordPress 主题使用到的头像尺寸设定七牛云对象存储空间的“图片样式”,参照 Gravatar 官方头像不同 size 的图片,依次是?s=40、60、80、100、120(你可以审查元素看看): 就明月使用的 Begin 主题来说 32、40、60、80、100 尺寸是最合适的,所以分别创建“图片样式”如下图:

这是全部创建完成后的处理样式列表

每个图片处理样式就参照上图设定即可,样式名称即为尺寸数字即可

至此七牛云存储端设置全部完成,剩下的就是在 WordPress 所使用的主题下根目录下的 function.php 里添加如下代码替换 WordPress 默认评论头像地址:

  1. //缓存 Gravatar 头像到七牛云存储,WordPress 4.0+ 适用
  2. function qiniu_avatar($avatar) {
  3.   $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*.srcset=.*/','<img src="http://这里要替换成你的七牛空间域名/avatar/$1-$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
  4.   return $avatar;
  5. }
  6. add_filter( 'get_avatar', 'qiniu_avatar', 10, 3 );

记得要把你自己的七牛空间域名或者绑定的自定义域名在代码里填上(代码内紫色字部分替换即可),然后保存,浏览一下评论页面后,对 最后就是体验博客载入速度了,如果你是七牛付费用户还可以给头像缓存的七牛空间开启融合 CDN ,这样头像调用会选择离你最近、速度最快的节点链接,这样就可以避免 Gravatar 被“墙”以来头像总是获取失败和载入龟速的尴尬了,也算是变相的给我们的 WordPress 提了速!话说也不知道啥时候 WordPress 才会考虑在国内架设服务器,但愿这个愿望可以实现。

2017.02.14 更新

有站长说 Gravatar 头像缓存到七牛后会造成用户更换头像后不能同步更新的问题,这个同步更新估计是没戏了,但我们可以通过设定 Gravatar 头像的缓存有效期来避免出现这样的尴尬,只需设定缓存 Gravatar 头像的七牛空间的“文件客户端缓存 maxAge”就可以了,如下图: 文件客户端缓存 maxAge 的值是以秒为单位的,为了方便大家根据不同情况设定不同的天数,下面直接给出不同天数对应的秒数,以方便大家填写:

  • 1 天=86400 秒
  • 3 天=259200 秒
  • 7 天=604800 秒
  • 10 天=86400 秒
  • 14 天=1296000 秒
  • 20 天=1728000 秒

为什么可以这样设定,这是因为前文讲到的缓存 Gravatar 头像的七牛存储空间镜像源是 Gravatar 官方的 https://secure.gravatar.com/服务器,七牛会重新拉取对应的头像图片的。

「点点赞赏,手留余香」

还没有人赞赏,快来当第一个赞赏的人吧!

明月登楼给明月登楼打赏
×
予人玫瑰,手有余香
  • 2
  • 5
  • 10
  • 20
  • 50
2
支付

本文来自投稿,不代表明月登楼的博客立场,版权归原作者所有,欢迎分享本文,转载请保留出处!

明月登楼
明月登楼 关注:9    粉丝:0 最后编辑于:2019-07-26
玉满斋(www.ymanz.com)网站创始人,☑玉器爱好者 ☑微博控 ☑手机控 ☑历史控 ☑宅 ☑网络控 ☑Wordpress控

发表评论

表情 格式 链接 私密 签到
评论
正在努力加载中...
扫一扫二维码分享