<Home>

MovableType评论格式化 replies-to-replies

MTCommentParent、MTCommentReplies、MTIfCommentReplies、MTIfCommentParent、MTCommentRepliesRecurse——原来MovableType还有这几个标签啊,通过简单的修改既可以完成“replies-to-replies”的格式化。

所谓“replies-to-replies”的格式化,其实就是说把针对某条评论A发表的后续评论B显示在评论A的下面(效果可以看看上一篇文章的评论6楼)。这种“replies-to-replies”格式在WP等一些blog程序搭建的blog里经常可以看到,但是在使用MT搭建的blog里我至今还没有见到有谁使用过,难道是传说中的全球第一人?哇哈哈……

闲言少叙,我以最简化的MT模板举例说明设置方法:

<ul>
...
<MTIfCommentParent>
<MTElse>

<li>
    <p><$MTCommentAuthorLink default_name="dimlau.com" show_email="0"$> @ <$MTCommentDate format="%Y-%m-%d,%H:%M"$></p>
            <$MTCommentBody$>
<MTIfCommentReplies>
  <MTCommentReplies>
     <div><MTCommentBody><MTCommentAuthor> 回复于<$MTCommentDate format="%Y-%m-%d,%H:%M"$></div>
  </MTCommentReplies>
</MTIfCommentReplies>

</li>
</MTIfCommentParent>
...
</ul>

其中绿色部分就是用来显示针对某条评论A发布的后续评论B的模板标签。如果不加入红色代码部分的话,则绿色部分显示的针对A发布的后续评论B除了在评论A下面显示之外还会作为一条单独的评论条目显示在评论列表里。而红色的代码部分的作用就是确定评论列表里的条目是不是后续评论,如果是后续评论的话则不在评论列表里单独显示,只显示在被评论的评论条目下面。

可能我的解释说明一时不好理解,但是照上述模板设置并且发布一条评论试一试之后应该就很好理解了。这个“replies-to-replies”格式没有用什么插件,实现起来很方便。但是也有一些局限性,就是这个后续评论只能是登陆blog后台之后添加,而文章页面没有针对评论的Reply链接。所以只能作为blog主人答复访客问题的一种途径了。

另外,明白了这些标签的含义之后,你当然也可以布置出不同于我所解释的格式来。比如,把红色代码删除(毕竟模板里少一些if...else可以提高一些执行效率),然后把绿色部分的代码修改成显示后续评论的指向链接,这样点击连接之后,会跳转到后续评论在评论列表里的位置,也达到了清晰列出“replies-to-replies”的目的。

fin.

页面会变得很长么?期待。

sopher 2008-01-17,15:57 says: “回复”

不明白...

dimlau 2008-01-17,16:31 says: “回复”

哪里不明白啊?我写的匆忙可能没表达清楚,呵呵

davidyin.myopenid.com 2008-01-17,16:27 says: “回复”

很不错,学习一下,我说怎么后台的Reply用不用都看不出来呢?原来还有这些标签。

dimlau 2008-01-17,16:32 says: “回复”

我也是今天才发现这几个标签,今天才用上了。以前我也纳闷呢...

davidyin.myopenid.com 2008-01-18,03:21 says: “回复”

昨天在你这里留言后,就把SEO网站优化推广的留言代码修改了,还稍微修改了一点CSS。就是没你做的好看。有空再改。
不知道何时MT会支持用户留言回复呢?

dimlau 2008-01-18,12:12 says: “回复”

呵呵,好像很难做的和界面“和 諧”,只好加个背景图先这么放着了……

锐风 2008-01-19,11:38 says: “回复”

恩,效果不错,支持下.

另外文字阴影效果不错啊~

dimlau 2008-01-19,11:43 says: “回复”

文字阴影好像只在 opera9.5+ 才有效果吧

dimlau 2008-01-19,11:54 says: “回复”

补充,当然safari早就支持text-shadow文字阴影,不过,windows里用safari的毕竟是少数,不提也罢