答读者问----评论楼层和作者突出显示
@Jason来信问我:
你的评论对BLOG主人和其他的发表的评论背景做了区分,请问是如果做到的。还有评论的楼层是如何实现的。
其实这个我在以前说过,但是那次并没有单独列出来讲解,而是一带而过的说了一下,所以,这次我仔细说一下,做个备份。
先说简单的,评论的楼层实现方式:
在Movable Type系统标签里有一个<$MTCommentOrderNumber$>标签用来给单篇文章的回复排序,从1开始列出序号,所以只要把这个标签放置于你的模版里的<MTComments>和</MTComments>之间就可以了。举个例子修改后的模版内容类似这样:
<MTIfCommentsActive> <MTComments> <a href="#comment-<$MTCommentID$>"># <$MTCommentOrderNumber$></a> <strong><$MTCommentAuthorLink default_name="匿名人士"$></strong> <$MTCommentAuthorIdentity$><$MTCommentDate format="%x %X"$> <$MTCommentBody$> </MTComments> </MTIfCommentsActive>
当然,实际应用中的模版应该比上述复杂,但是格式就是这样。
还要注意:这个<$MTCommentOrderNumber$>显示的是页面现实中的从前到后的顺序,所以如果你使用评论倒叙(新评论在上面)的话,效果就不是很好了。
下面说说作者突出显示,还是以最简单的模版内容举例:
<MTIfCommentsActive> <MTComments> <div class="comment <$MTCommentAuthor$>" id="c<$MTCommentID pad="1"$>"> <a href="#comment-<$MTCommentID$>"># <$MTCommentOrderNumber$></a> <strong><$MTCommentAuthorLink default_name="匿名人士"$></strong> <$MTCommentAuthorIdentity$><$MTCommentDate format="%x %X"$> <$MTCommentBody$> </div> </MTComments>
上述代码中的绿色部分应该是你的模版中有的,我们要做的是添加上述内容的红色部分进去,注意,添加的红色部分之前有一个空格!
其中的红色部分MTCommentAuthor在评论发布后会被解析成评论人的名字,然后,在单篇文章模版的</head>标签前加上类似以下内容:
<style type="text/css" media="screen"><!--
.xxxx{color:#000;background:url(xxx.gif);}
--></style>
其中xxx就是blog主人的昵称,之后,当有人用xxx这个名字发表评论的时候,评论内容就是用黑色字体显示,并且评论区域背景为图片xxx.gif。你可以更改上面的css内容以达到不同效果。
注意,正如你看到的,上面我是说有人,而不一定是blog主人本人。也就是说比如blog主人昵称为xxx那么,所有在评论时填写xxx作为昵称的评论内容都自动套用了定义好了的格式。我想。。。这是MT的一个小小缺陷吧:并不能限制别人使用blog主人的昵称。
ok,本文结束。
fin.
页面会变得很长么?期待。
Jason 2007-01-13,22:17 says: “回复”
Hi dimlau:
非常感谢你的指点,在我给你留言后我在官方持到楼层的实现方法,后来我看了你的源文件,发现你根据不同评论人实现背景的方法。后来在我平生一笑的BLOG发现,他的方法比较独特,还有IKIAS的隔行换色。
最后再次感谢你!
vanilla 2007-01-13,22:34 says: “回复”
没仔细看,偶太笨笨了,
你真聪明呀!~忽忽!~
恩,比zorro还要聪明!~
不过弄那么麻烦干什么呀?
dimlau 2007-01-14,09:08 says: “回复”
不要客气
服务器是我自己的
放在厦门网通机房
zorro 2007-01-14,16:17 says: “回复”
无语,为什么和我比……?
有可比性么?
dimlau 2007-01-14,17:19 says: “回复”
没注意看,2楼丫头的比较。。。还真是有意思啊
其实,不用比较也能知道这个道理