<Home>

答读者问----评论楼层和作者突出显示

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楼丫头的比较。。。还真是有意思啊

其实,不用比较也能知道这个道理

-= 评论已关闭 =-