gg打不開了Gravatar也不行了,現在小編打扮把wordpress Gravatar頭像修改緩存到本地服務器了,下面把整個修改過程給各位整理一次.
在wordpress目錄下建立文件夾:avatar,文件夾權限為:755,如果不行文件夾權限就設置成777,這是gravatar頭像緩存的路徑.
設置默認頭像
制作一張默認頭像,也可以直接在wordpress后臺》設置》討論 里copy一張,命名為"default.jpg" ,放在 avatar文件夾里面.
添加緩存代碼
將下面的代碼復制到模板的 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 = home_url(); // $w = get_bloginfo('url');
- $e = preg_replace('/wordpress//', '', ABSPATH) .'avatar/'. $f .'.jpg';
- $t = 604800; //設定7天, 單位:秒
- if ( emptyempty($default) ) $default = $w. '/avatar/default.jpg';
- if ( !is_file($e) || (time() - filemtime($e)) > $t ) //當頭像不存在或者文件超過7天才更新
- copy(htmlspecialchars_decode($g), $e);
- else //開源軟件:Vevb.com
- $avatar = strtr($avatar, array($g => $w.'/avatar/'.$f.'.jpg'));
- if (filesize($e) < 500) copy($default, $e);
- return $avatar;
- }
- add_filter('get_avatar', 'my_avatar');
搞完上面的東西就OK了.如同本站設置的一樣的.
總結:其實Gravatar頭像緩存到本地還是非常不錯了,自己服務器的東西自己有把握管理與維護了,你看到那個大站把數據放到別人服務器上了呀.
新聞熱點
疑難解答
圖片精選