WEB主題公園
WordPress原創(chuàng)主題,高端網(wǎng)站模板建站,網(wǎng)站模板建站資源以及開發(fā)知識分享,盡在WEB主題公園
WEB主題公園致力于開發(fā)適合中國人習慣的中文WordPress網(wǎng)站模板,并提供全程視頻教程,讓您能夠輕松的使用網(wǎng)站模板建立好自己的網(wǎng)站!
Gravatar 頭像被屏蔽導致網(wǎng)站速度變慢
這幾天有朋友反應(yīng),網(wǎng)站速度變慢了,之前有過谷歌字庫和腳本庫的ip被屏蔽,造成網(wǎng)站后臺變卡,變慢的情況,貌似在前幾天(2014-11-15日左右),WordPress的默認頭像支持Gravatar 頭像也被中國給屏蔽了,這樣也會造成后臺卡、變慢的情況發(fā)生。
WEB主題公園的主題使用經(jīng)過用戶反饋,Gravatar 頭像加載會造成主題選項? 在保存時出現(xiàn)保存時間長,保存超時等故障發(fā)生。
未登錄時,使用評論插件也會出現(xiàn)卡、慢的現(xiàn)象。
這是由于Gravatar 頭像被屏蔽,而程序不斷的去連接從而影響速度。
解決方法:
1.企業(yè)用戶,不需要顯示頭像
如果你的網(wǎng)站沒有評論功能,那么直接關(guān)閉頭像即可(勾選掉頭像選項):

2.需要顯示頭像的用戶:
調(diào)用ssl 頭像鏈接:
https還是沒被屏蔽的,而且速度還不錯,直接調(diào)用這個最簡單了。
如果你的網(wǎng)站啟用了ssl則不需要了,否則加functions.php 入如下代碼(付費主題用戶加入load.php中即可。)
function get_ssl_avatar($avatar) {
$avatar = preg_replace('/.*\/avatar\/(.*)\?s=([\d]+)&.*/','<img src="https://secure.gravatar.com/avatar/$1?s=$2" class="avatar avatar-$2" height="$2" width="$2">',$avatar);
return $avatar;
}
add_filter('get_avatar', 'get_ssl_avatar');
本地緩存
下面的代碼加到functions.php 中(付費主題用戶加入load.php中即可。)
function my_avatar($avatar) {
$tmp = strpos($avatar, 'http');
$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; //設(shè)定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');在WordPress安裝根目(即跟wp-content等文件夾同一目錄下)下新建一個名為 avatar 的文件夾 ,并給予寫權(quán)限。放入一張同尺寸的頭像圖片命名為default.jpg。
如果使用多說插件,可以加入多說緩存:
如下代碼加到functions.php 中(付費主題用戶加入load.php中即可。)
這段代碼如果你在使用帶有評論的插件都可以,否則默認的頭像加載gravatar會變得很慢
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 );
這樣就不會變的卡和慢了。
如果你有更好的方法,可以告訴我們或者在下面的留言中分享~ 感謝您的支持!
如未標明出處,所有文章均為WEB主題公園原創(chuàng),如需轉(zhuǎn)載,請附上原文地址,感謝您的支持和關(guān)注。
本文地址:http://www.dengyin90.cn/gravatartxbpbdzwzsdbm.html
推薦閱讀
- 2018年6月13日
- 2014年3月19日
- 2016年10月12日
- 2021年3月9日
- 2013年6月29日
- 2016年12月15日
- 2016年11月8日
- 2013年9月30日
- 2013年12月2日




