由于emlog自带的获取头像的接口访问很慢,所以调用本地emlog头像会让网站的整体响应时间提高,这样的头像更加整齐,美观。
1.打开模板文件夹里面的module.php文件,在里面加上下面这段代码:
<?php //blog:评论头像 function blog_comments_avatar($email,$size='50',$default='',$alt='avatar'){ if(!$email){ //如果没填写email,直接显示默认头像,填写了email再缓存 $imgurl=BLOG_URL.'avatar/default.jpg'; echo"<img title='{$alt}' alt='{$alt}' src='{$imgurl}' class='avatar avatar-32 photo' height='{$size}' width='{$size}' />"; }else{ $f=md5(strtolower($email)); $w=BLOG_URL; $a=$w.'avatar/'.$f.'.jpg'; $e=EMLOG_ROOT.'/avatar/'.$f.'.jpg'; //缓存时间,单位是秒,这里是14天 $t=1209600; if(empty($default)) $default=$w.'avatar/default.jpg'; //超过14天,重新获取头像并缓存 if(!is_file($e)||(time()-filemtime($e))>$t){ $r='X'; $g=sprintf("http://%d.gravatar.com",(hexdec($f{0})%2)).'/avatar/'.$f.'?s=64$d='.$default.'&r='.$r; @copy($g,$e);$a=$g; } if(@filesize($e)<500) @copy($default,$e); echo"<img title='{$alt}' alt='{$alt}' src='{$a}' class='avatar avatar-32 photo' height='{$size}' width='{$size}' />"; } } ?>
后在//blog:博客子评论列 下面找到类似:
<img src="<?php echo getGravatar($comment['mail']); ?>" />
你找不到也正常,你可以直接搜索[<img src]就在自评论里面,别改错了。
替换成
<?php blog_comments_avatar($comment['mail'],$size='50',$default='',$alt='') ?>
再将模板中 //widget:最新评论 的话请找到类似下面的语句:
<img src="<?php echo getGravatar($value['mail']); ?>" height="50" width="32"/>当然你也不一定能找到,一样的只要找到[<img src]句段就可以了。
替换成
<?php blog_comments_avatar($value['mail'],$size='50',$default='',$alt='') ?>
代码里面的 $size='50 为头像的高度和宽度可以自己设置,$alt=''为鼠标放在头像上面显示的字,可以自己设置,最后在网站的根目录创建一个名为 avatar 的文件夹并设置权限为可写,然后再上传一张规格大小($size='50 )为你所设置的图片大小,必须是jpg格式的,注意: 不同的模板是有点差异,但是都是大同小异,不懂的可以联系我!改动之前记得备份一下module.php 以防万一!
发表评论: