首页 > 网站建设 > emlog相关 > [收藏]emlog评论头像缓存PHP代码
2014
05-22

[收藏]emlog评论头像缓存PHP代码

今天看到有人在论坛里分享了emlog缓存评论头像的代码,赶紧转了过来,好代码应该让它服务于更多的网友!

插入module.php中,修改自12年某emer的代码。缓存7天可以自己修改,缓存呢可以加快页面是显示速度,但也不能那么及时更新头像了。看自己需要吧。对路由服务器来说,加载留言板的速度无疑快了不少。

使用方法:在module.php的最新评论 显示评论 显示子评论里面将getGravatar替换成get_avatar 。

<?php
function get_avatar($mail,$size = '40')
{
        $email_md5 = md5($email);
        $cache_path=EMLOG_ROOT."/content/templates/uu_hcms/cache"; //缓存文件夹路径,需要根据实际情况修改
        if(!file_exists($cache_path))
        {
                mkdir($cache_path,0700);
        }
        $avatar_url=TEMPLATE_URL."cache/".$email_md5.'.jpg'; //头像相对路径
        $avatar_abs_url=$cache_path."/".$email_md5.'.jpg'; //头像绝对路径
        $cache_time=24*3600*7; //缓存时间为7天
        if (empty($default)) $default = $cache_path. '/default.jpg';
        if(!file_exists($avatar_abs_url) || (time()-filemtime($avatar_abs_url)) > $cache_time)//过期或图片不存在
        {
                $new_avatar = getGravatar($mail,$size,$d = 'mm', $g = 'g');
                copy($new_avatar,$avatar_abs_url);
        }
        $email_md5=md5(strtolower($mail));//通过MD5加密邮箱
        $cache_path=EMLOG_ROOT."/content/templates/uu_hcms/cache"; //缓存文件夹路径
        if(!file_exists($cache_path))
        {
                mkdir($cache_path,0700);
        }
        $avatar_url=TEMPLATE_URL."cache/".$email_md5.'.jpg'; //头像相对路径
        $avatar_abs_url=$cache_path."/".$email_md5.'.jpg'; //头像绝对路径
        $cache_time=24*3600*7; //缓存时间为7天
         if (empty($default)) $default = $cache_path. '/default.jpg';
        if(!file_exists($avatar_abs_url) || (time()-filemtime($avatar_abs_url)) > $cache_time)//过期或图片不存在
        {
                $new_avatar = getGravatar($mail);
                copy($new_avatar,$avatar_abs_url);
        }
        return $avatar_url;
        }
?>

需要的自己拿走就可以了,不过不是我写的,我只是将原作者的分享精神发扬光大了!

最后编辑:
作者:xindao
这个作者貌似有点懒,什么都没有留下。

留下一个回复

你的email不会被公开。