当前位置:首页 > CMS教程 > WordPress > 列表

WordPress缓存Gravatar头像到本地修改

发布:smiling 来源: PHP粉丝网  添加日期:2014-11-21 13:13:05 浏览: 评论:0 

gg打不开了Gravatar也不行了,现在小编打扮把wordpress Gravatar头像修改缓存到本地服务器了,下面把整个修改过程给各位整理一次.

在wordpress目录下建立文件夹:avatar,文件夹权限为:755,如果不行文件夹权限就设置成777,这是gravatar头像缓存的路径.

设置默认头像

制作一张默认头像,也可以直接在wordpress后台》设置》讨论 里copy一张,命名为"default.jpg" ,放在 avatar文件夹里面.

添加缓存代码

将下面的代码复制到模板的 functions.php 文件中即可,代码如下:

  1. function my_avatar($avatar) { 
  2.      $tmp = strpos($avatar'http'); 
  3.      $g = substr($avatar$tmpstrpos($avatar"'"$tmp) - $tmp); 
  4.      $tmp = strpos($g'avatar/') + 7; 
  5.      $f = substr($g$tmpstrpos($g"?"$tmp) - $tmp); 
  6.      $w = home_url(); // $w = get_bloginfo('url'); 
  7.      $e = preg_replace('/wordpress//''', ABSPATH) .'avatar/'$f .'.jpg'
  8.      $t = 604800; //设定7天, 单位:秒 
  9.      if ( emptyempty($default) ) $default = $w'/avatar/default.jpg'
  10.      if ( !is_file($e) || (time() - filemtime($e)) > $t ) //当头像不存在或者文件超过7天才更新 
  11.          copy(htmlspecialchars_decode($g), $e); 
  12.      else //开源软件:phpfensi.com 
  13.          $avatar = strtr($avatararray($g => $w.'/avatar/'.$f.'.jpg')); 
  14.      if (filesize($e) < 500) copy($default$e); 
  15.      return $avatar
  16.  } 
  17.  add_filter('get_avatar''my_avatar'); 

搞完上面的东西就OK了.如同本站设置的一样的.

总结:其实Gravatar头像缓存到本地还是非常不错了,自己服务器的东西自己有把握管理与维护了,你看到那个大站把数据放到别人服务器上了呀.

Tags: WordPress缓存 Gravatar头像

分享到: