在这篇文章中,我们将讨论如何让你的主题实现 WordPress 2.7 的评论嵌套功能。
在 Wopus 中文平台新主题-wMagazine 即将完工的时候,我们拿到了 WordPress 2.7 的最新版本 Beta1,第一时间对其进行了详尽的测试。在 WordPress 2.7 之前,要实现评论嵌套,我们必须开启 WordPress Thread Comment
这个插件,而在即将发布的 WordPress 2.7 中,Thread Comment 将被集成进来,使用 wp_list_comments
函数即可调用嵌套评论 (Thread Comment) 。但是,WordPress 开发团队还没有任何资料说明如何使用这个新函数,在参考了
default 主题的 comments.php 文件后,我们大致了解了其工作流程。也想使自己的主题支持嵌套评论 (Thread
Comment) 这个功能?那就继续看下去吧。
- 首先,添加 comment-reply JavaScript,让评论嵌套 (Thread comment) 能够正常运行
- 判断 WordPress 版本,有选择性地使用 wp_list_comments 函数
- WordPress 2.7 的评论 Loop
- 实现嵌套回复留言
- 当然,我们也可以取消回复
在 wp_head() 函数之前添加如下函数:
< ?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>
WordPress 2.7 通过函数 wp_list_comments 来显示所有留言,可之前版本并没有这个函数,所以,我们需在 comments.php 文件中添加如下代码:
if (function_exists('wp_list_comments')) :
// new comments.php stuff
else :
// old comments.php stuff
endif;
< ?php if ($comments) : ?>
< ?php comments_number('No Comments', 'One Comment', '% Comments' ); ?>
< ?php else : // this is displayed if there are no comments so far ?>
< ?php if ('open' == $post->comment_status) : ?>
< ?php else : // comments are closed ?>
Comments are closed.
< ?php endif; ?>
< ?php endif; ?>
首先需要要把评论框 (Comment Form) 放入一个 ID 为 respond 的 DIV 中,然后并在评论框中添加如下代码:
< ?php comment_id_fields(); ?>
以上代码参照 Wopus 中文平台的新主题 wMagazine,请根据自身情况合理安排位置