轻松解决WordPress主题Gravatar头像加载慢的问题

现在 Gravatar 在国内几乎是已经被墙的不能用了,特别主题前端有带 gravatar 头像的情况下加载显…

现在 Gravatar 在国内几乎是已经被墙的不能用了,特别主题前端有带 gravatar 头像的情况下加载显示头像很慢,要解决头像加载问题但又不想额外安装头像缓存类插件解决;比较喜欢用 loli 家的 cdn,速度比较好,
还有常用的一些前端公共库 https://css.loli.net/ ,只能自己动手将 Gravatar 头像换成从国内的镜像源加载;偶尔发现 v2ex 它提供了 Gravatar 的 CDN 服务,而且是针对国内和国外线路都是有优化的,而且还支持 ssl 访问,强烈推荐。

方法一

WordPress 替换掉默认的 gravatar 为 loli 方式 PS:在 functions.php 里加入:

  1. //替换头像为loli cdn地址
  2. function meow_get_ssl_avatar($avatar) {
  3. $avatar = preg_replace('/.*/avatar/(.*)?s=([d]+)&.*/','<img src="https://gravatar.loli.net/avatar/$1?s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
  4. return $avatar;
  5. }
  6. add_filter('get_avatar', 'meow_get_ssl_avatar');

方法二

将一下代码添加到主题 functions.php 文件的末尾保存,即可实现通过 v2ex 的高速 Gravatar CDN 获取加载头像,解决头像加载延迟导致页面显示缓慢的问题!

  1. // 替换Gravatar为v2ex头像源
  2. function mytheme_get_avatar( $avatar ) {
  3.     $avatar = preg_replace("/http://(www|d).gravatar.com/avatar//","http://cdn.v2ex.com/gravatar/",$avatar);
  4.     return $avatar;
  5. }
  6. add_filter('get_avatar', 'mytheme_get_avatar');

确实关于修改方法,百度了一下主要就如下 2 种方法:

1、修改 wordpress 基础程序 wp-includes/pluggable.php 中 get_avatar() 函数的变量$host 的值指向新的加载地址,这是很彻底的从根本解决问题的方法;但是如果 wordpress 程序升级更新后,配置就会被还原!

2、在当前主题模版的函数模版 functions.php 中添加替换函数,然后用 add_filter()的方法调用替换函数将原本 gravatar.com 的加载 url 替换成我们想要的 url 实现;只针对当前的主题模版有效,更换主题后配置失效;wordpress 主程序更新升级不受影响!

上面我们使用的就是第二种方法,简单有效不会更换主题后配置失效。

类别:WordPress教程

本文收集自互联网,转载请注明来源。
如有侵权,请联系 wper_net@163.com 删除。

评论 (0)COMMENT

登录 账号发表你的看法,还没有账号?立即免费 注册