本站是轻量级内容管理系统 LiteCMS 的 Cloudflare 版本,全部运行在边缘网络Pages上,欢迎测试反馈(QQ群:23189103)。

轻松解决WordPress博客Gravatar头像被墙

自2014年10月左右开始,Gravatar 头像服务在中国大陆就陆续被彻底屏蔽了,(网站一直处于加载状态,访问速度变慢,左下角显示状态条:0.gravatar.com链接一直滚动等国内没办法正常访问)就连之前使用的缓存…
81e6b960312cacfdfa465d50dc90721f 自2014年10月左右开始,Gravatar 头像服务在中国大陆就陆续被彻底屏蔽了,(网站一直处于加载状态,访问速度变慢,左下角显示状态条:0.gravatar.com链接一直滚动等国内没办法正常访问)就连之前使用的缓存头像到本地的方法,在国内主机中也失效了。怎么办?下面博主就和大家分享下修复gravatar头像被墙的过程!如果您还没有Gravatar头像请参考http://hechaocheng.cn/get-Gravatar/ 如没说明都是将以下代码放入你的当前wordpress主题的functions.php中,任选其一:
支持HTTPS请问。 //=== Gravatar头像缓存 ===// function gravatar_cache( $avatar ){ return preg_replace('/\?s\=/', '.png?s=', preg_replace('/http:\/\/(www|\d).gravatar.com/', 'gravatar.hechaocheng.cn', $avatar)); } add_filter( 'get_avatar', 'gravatar_cache' );
如果不想用这个方案,或许使用ssl 头像链接、本地缓存、多说缓存服务器也可以。

本地缓存

function my_avatar($avatar) { $tmp = strpos($avatar, 'http');<br /><br /><br /><br /> $g = substr($avatar, $tmp, strpos($avatar, "'", $tmp) - $tmp); $tmp = strpos($g, 'avatar/') + 7; $f = substr($g, $tmp, strpos($g, "?", $tmp) - $tmp); $w = get_bloginfo('wpurl'); $e = ABSPATH .'avatar/'. $f .'.jpg'; $t = 1209600; //設定14天, 單位:秒 if ( !is_file($e) || (time() - filemtime($e)) > $t ) { //當頭像不存在或文件超過14天才更新 copy(htmlspecialchars_decode($g), $e); } else $avatar = strtr($avatar, array($g => $w.'/avatar/'.$f.'.jpg')); if (filesize($e) < 500) copy($w.'/avatar/default.jpg', $e); return $avatar; } add_filter('get_avatar', 'my_avatar');

多说缓存服务器

function duoshuo_avatar($avatar) { $avatar = str_replace(array("www.gravatar.com","0.gravatar.com","1.gravatar.com","2.gravatar.com"),"gravatar.duoshuo.com",$avatar); return $avatar; } add_filter( 'get_avatar', 'duoshuo_avatar', 10, 3 );

调用ssl 头像链接

//调用ssl 头像链接 function get_ssl_avatar($avatar) { $avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*/','<img src="https://secure.gravatar.com/avatar/$1?s=$2&d=mm" class="avatar avatar-$2" height="$2" width="$2">',$avatar); return $avatar; } add_filter('get_avatar', 'get_ssl_avatar');

评论0

评论将在站长审核通过后显示,请文明发言。

还没有评论,来说两句吧。

发表评论

支持纯文本,网址会自动转成链接
↑