加速WordPress:將Gravatar頭像緩存到本地

字號(hào):


    什么是Gravatar頭像?
    Gravatar頭像相當(dāng)于你的QQ頭像,代表的就是你在網(wǎng)絡(luò)的個(gè)人形象,所以各種社交程序都不能免除頭像的使用,WordPress也不例外。
    眾所周知,WordPress的Gravatar頭像默認(rèn)會(huì)是 “http://pic02.newdu.com/uploads/202504/02/sp;在 wp-content 的同級(jí)目錄建立文件夾:avatar,文件夾權(quán)限為:755,如果不行文件夾權(quán)限就設(shè)置成777, 這是 gravatar頭像 緩存的路徑。BR    設(shè)置默認(rèn)頭像BR    制作一張默認(rèn)頭像,也可以直接在wordpress后臺(tái)》設(shè)置》討論 里copy一張,命名為default3446.jpg" ,放在 avatar 文件夾里面。
    添加緩存代碼
    將下面的代碼復(fù)制到模板的 functions.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 ) { //當(dāng)頭像不存在或文件超過(guò)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');
    OK,收工。刷新幾個(gè)網(wǎng)頁(yè),看看avatar文件夾中是否有緩存內(nèi)容,如果沒(méi)有的話,說(shuō)明緩存失敗,該方法不適合你。