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 ( empty($default) ) $default = $w. '/avatar/default.jpg';
     if ( !is_file($e) || (time() - filemtime($e)) > $t ) //当头像不存在或者文件超过7天才更新
         copy(htmlspecialchars_decode($g), $e);
     else
         $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头像缓存到本地还是非常不错了,自己服务器的东西自己有把握管理与维护了,你看到那个大站把数据放到别人服务器上了呀

时间: 2024-07-29 19:00:30

WordPress缓存Gravatar头像到本地修改的相关文章

WordPress实现Gravatar头像缓存的例子

现在越来越多的网站支持Gravatar头像,越来越多的网友设置了个性化Gravatar头像,wordpress也是默认使用Gravatar头像,但是Gravatar毕竟是在墙外的,当一个页面上需要展示很多个Gravatar头像的时候,难免会影响到页面载入速度,为了提高用户体验,我们可以把头像文件缓存到本地服务器上. 首先在你的博客根目录下创建一个文件夹,专门用来存放缓存的Gravatar头像文件,比如"avatar",权限设置同目录下其他文件.然后在修改functions.php文件,

WordPress缓存不同大小的Gravatar头像方法

改善功能:支持不同大小的头像:支持自动创建缓存目录. 下面子凡就不多说了,把一下代码加入到你主题的function.php中即可:  代码如下 复制代码 //缓存Gravatar头像 add_filter('get_avatar', 'fanly_cache_avatar'); function fanly_cache_avatar($avatar) {  if(!is_dir('avatar'))//判断是否有缓存目录   mkdir('avatar', 0755, true);//否者创建头

WordPress无法显示Gravatar头像被墙的四种解决方案

在当前Gravatar头像服务器被墙的情况下,要想要加快Wordpress显示Gravatar头像的速度,我们可以做那些努力呢?通常的做法大致有以下几种: 1.首先可以做的就是将Gravatar头像图片缓存到自己的虚拟主机或者VPS 上,这样用户访问的就是直接读取自己服务器的图片文件.好处是访问的本地图片,图片的加载非常快!缺点也是显而易见的:运行一段时间后,大量的 Gravatar头像图片会占用非常多的空间,过多的图片导致服务器压力骤增. 2.安装插件:插件有二大类,一类是wordpress评

加速Gravatar头像缓存的方法详解

头像用的最多的还是使用Gravatar头像,但是Gravatar头像服务器在国外,速度上肯定有影响,如果很快的缓存Gravatar头像呢? 网上大部分是本地缓存,然后通过本地化Gravatar头像缓存来加快速度. 但是这次我换一种方法,无需加重自己服务器的负担来加快,因为这里有免费的七牛,使用七牛的同步镜像功能,同步Gravatar头像网站,然后把所有Gravatar头像地址改成七牛的地址就可以了.   使用方法: 1.去七牛申请帐号.官网地址:http://www.qiniu.com  推广注

详解WordPress中的头像缓存和代理中的缓存更新方法_php技巧

wordpress评论中的头像是使用Gravatar的头像服务(Gravatar官方注册地址:http://en.gravatar.com),用户的缓存头像一般都是固定不变的,所以我们可以将头像缓存到本地来提高我们网站的访问速度. 我的wordpress avatar目录的头像缓存: wordpress头像缓存功能设置方法首先是在根目录下建立一个文件夹avatar,权限755.再在里面放一个默认的头像(default.jpg),没头像的童鞋就会用默认的.代码如下: function my_ava

wordpress禁止没有Gravatar头像的访客提交评论

1 为何限制没有Gravatar头像的访客 前几天博主就一直在想着是否要限制没有gravatar头像的用户在博客留言,主要原因有三点: 1.博客使用的是wordpress程序,而Gravatar早在07年就被Automattic公司收购并在wp程序上发扬光大.所以,wp博客和gravatar头像天生就是一对,当然要让他们在一起了. 2.屏蔽广告.很多spamer都是没有gravatar头像的,限制没有gravatar头像的访客就等于过滤掉了相当一部分的垃圾广告.扯远一点,多说插件为众多广告商做出

wordpress使用之gravatar头像设置

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 博客留言对于站长朋友们来说肯定是家常便饭了,经常能看到别人在留言时除了能留下自己的链接以外,也留下了他的个性头像,这个头像叫gravatar头像,要怎么设置?接下来就和大家分享下. 1.先登录gravatar官方网站,它的官方网站界面很简单,一个是注册,一个是登陆.我们选择注册: 2.进入邮箱页面,需要输入注册的邮箱,去别人博客留言时需要用的

WordPress禁止没有Gravatar头像的邮箱提交评论

最近被垃圾评论弄烦了,有些目测是人工评论,但是带着广告链接,看着恶心,大部分没有Gravatar头像,于是本博决定阻止掉没有头像的访客正常提交评论, 编辑所用主题的functions.php文件,加入下面的代码:  代码如下 复制代码 /*     * @author:vfhky 2013年09月11日20:23     * @param string $email 用户提交的表单中的email字段     * @return int 0:无gravatar头像; 1:有gravatar头像  

WordPress博客推广之Gravatar头像设置

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 从事于网站推广的站长们都应该知道,不管是那方面的推广,细节的东西都应该要做的很好.网站推广的方法很多,博客留言的推广也是众多方法中的一种,博客留言推广中也有项要注意的就是头像的设置. Gravatar头像可以通过它的官网http://en.gravatar.com进行设置,设置好Gravatar头像后,它就可以在 wordpress或是支持G