目前国内访问Gravatar头像服务器速度感人,极大的影响了页面的加载速度。

也尝试了网上不少插件和方法,但是很多都长时间没更新,或者已经失效了。

下面这个方法亲测目前仍有效,可以把cn.gravatar.com镜像到七牛,速度有很大的改观。

方法很简单,在/wp-includes/link-template.php中大约4200多行的地方(不同wordpress版本可能不同),找到

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

改成:

if ( is_ssl() ) {
		//$url = 'https://secure.gravatar.com/avatar/' . $email_hash;
		$url = 'https://dn-qiniu-avatar.qbox.me/avatar/' . $email_hash;
	} else {
	//	$url = sprintf( 'http://%d.gravatar.com/avatar/%s', $gravatar_server, $email_hash );
		$url = sprintf( 'https://dn-qiniu-avatar.qbox.me/%s', $gravatar_server, $email_hash );
	}

保存就可以了。更改后,如果使用主题functions.php文件中还有其它头像缓存代码,请删掉,否则可以造成头像显示出现错乱。当然,上面的网址,你也可以改成你自己在七牛云的空间地址。申请这不难,注册,身份认证后会送10G免费空间,自己百度设置使用方法就行。缓存Gravatar头像足够了。

这个方便很简单,也确实能使在七牛云缓存的头像显示出来。但有部份评论者的头像,等了几天都不见显示。还有个小小的不足就是,每次程序升级,必须又得手动更改一次。翔哥一个想法,能不能不在/wp-includes/link-template.php中修改,而是在主题的functions.php文件中通过代码,把头像缓存地址“https://secure.gravatar.com”换成七牛的就行?试了几次,都没成功。希望有大神能够解决。感谢!

刚从别的博客里找到更好的方法,就是用wp-china-yes这个插件,安装后不用设置,启用后一键加速G头像被墙问题。太爽了,所有评论头像又回来了。注意,使用这插件时,把上面设置的七牛云地址更改回原来的secure.gravatar.com。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。