Akcms其实真的是一个CMS措施,成果很强大,不外这些成果大部门都在水面下,我能用到的只是它暴露珠面的冰山一角,所以,更多的是将这个akcms看成博客措施来用,只是作为博客,它的评论成果和wordpress比起来又差了很多。不外很多成果不是不能实现,而是不懂怎么实现,下面讲的是通过akcms的过滤器成果,来实现评论者的gravatar头像显示和心情显示成果。
AKCMS轻量级CMS v6.1下载
界面预览
一、实现gravatar头像因为措施默认的comments表格里没有email这个项,所以得通过手动添加,添加步伐见梅川类酷的《AKCMS 4.0.3操作文章评论建造自界说字段的留言本》,最新版本4.0.9同样合用。
添加完email字段后,在措施靠山添加一个过滤器,内容为:
php:preg_replace('/md5\((.*)\)/Uise', "md5('\\1')", $input);在评论模板里引用这个自界说字段:
<{getcomments bandindex="1" page=$page itemid=$id num="1000" filter="1" template="<img src=http://down.chinaz.com/()http:/www.gravatar.com/avatar.php?gravatar_id=md5([email])&size=40&d=identicon&r=G() />
"}>
函数中的filter="1"里的1对应的是你过滤器的ID,这样就可以显示了。
二、实现心情成果这个是过滤器团结javascript来实现评论心情成果的。
1)筹备好意情,将它传到你的空间某目次下,好比下面例子是传到根目次images文件夹的face文件夹下,同时将心情图片的文件名用纪律的数字修改好;
2)在评论模板里添加下面的js,这里限制每条评论最多3个心情:
function add_face(id, wrap){
var o = document.getElementById(wrap);
var s = o.value;
var reg = new RegExp("FA:[0-9][0-9]", "gm");
if (s.match(reg) == null)
{
var a = 1;
}
else
{
if (s.match(reg).length >= 3)
{
alert("不要心情泛滥哦!");
return;
}
}
o.value = o.value + "[FA:" + id + "]";
o.focus();
}
3)在评论框前后需要显示心情的处所加以下代码:
<p><a href="javascript:add_face('01', 'comment');"><img title="发呆" alt="发呆" src=http://down.chinaz.com/"/images/face/01.gif" border="0"></a>
<a href="javascript:add_face('02', 'comment');"><img title="可爱" alt="可爱" src=http://down.chinaz.com/"/images/face/02.gif" border="0"></a>
……
</p>
代码javascript:add_face('01', 'comment');中的持续数字01、02对应的是心情图片名称,comment是评论框的id。
4)通过过滤器将评论的心情符转成图片:
preg_replace:\[\FA:([0-9]+)\]|<img src=http://down.chinaz.com/"/images/face/$1.gif" />5)在评论模板中挪用上面的过滤器,同gravatar头像要领,多个过滤器可归并。
过滤器具体浸染见: