如何让你的主题实现 Wordpress 2.7 的评论嵌套功能

2008-11-03 9:09 | 来源: 原创 | 作者: 辐射鱼 | 评论: 25条评论

今天,就让我们来开始告诉你如何使你的主题兼容 Wordpress 2.7 这个专题的第一篇吧。

在这篇文章中,我们将讨论如何让你的主题实现 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)这个功能?那就继续看下去吧。

  1. 首先,添加 comment-reply JavaScript,让评论嵌套 (Thread comment) 能够正常运行
  2. 在 wp_head() 函数之前添加如下函数:
    < ?php if ( is_singular() ) wp_enqueue_script( 'comment-reply' ); ?>

  3. 判断 Wordpress 版本,有选择性地使用 wp_list_comments 函数
  4. WordPress 2.7 通过函数 wp_list_comments 来显示所有留言,可之前版本并没有这个函数,所以,我们需在 comments.php 文件中添加如下代码:

    if (function_exists('wp_list_comments')) :
    // new comments.php stuff
    else :
    // old comments.php stuff
    endif;

  5. WordPress 2.7 的评论 Loop
  6. < ?php if ($comments) : ?>
    < ?php comments_number('No Comments', 'One Comment', '% Comments' ); ?>

    < ?php wp_list_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; ?>

     

  7. 实现嵌套回复留言
  8. 首先需要要把评论框 (Comment Form) 放入一个 ID 为 respond 的 DIV 中,然后并在评论框中添加如下代码:
    < ?php comment_id_fields(); ?>

  9. 当然,我们也可以取消回复
  10.  

    < ?php cancel_comment_reply_link(); ?>

     

以上代码参照 Wopus中文平台的新主题 wMagazine,请根据自身情况合理安排位置

wordpress主题定制

标签: , , ,

| More

编辑: 辐射鱼

  1. louis 说:

    终于占了一次沙发!

  2. aunsen 说:

    板凳!囧!鱼终于搞定了!很是轰骚啊!

  3. 孙空空 说:

    好像这次升级要小心点了~

  4. 说:

    搞成插件更方便大众

  5. 老N 说:

    还是用那个插件吧,不用改了……

  6. 辐射鱼 说:

    @时 呢个就不必了吧,再说也有 Thread comment 这个插件了啊

  7. 辐射鱼 说:

    @老N 这个就不必吧,升级到2.3以后,大家不也抛弃了UTW么?用原生的感觉就是要好些,哈哈

  8. 雪深 说:

    都这么晚了 地板都凉了

  9. EaSy 说:

    这次跟的非常快啊。害的没坐上沙发。

  10. dickym 说:

    论坛开不了

  11. 老孔 说:

    偶,买噶!
    做插件好!

  12. 老孔 说:

    路过,我来看我留言的。不错不错。

  13. zylew 说:

    @时 支持做插件,哈哈

  14. slene 说:

    测试一下
    本贴地址

  15. Rey 说:

    请问 wp_head() 这个函数在哪个文件。。。没找到。。。

  16. 随影 说:

    还不错啊!!

  17. youngmonk 说:

    不知用集成的功能和用插件速度有没有差别,如果没,用插件好了.

  18. 海派 说:

    学习了。。

  19. AnQ 说:

    这样的话就知道怎么回事了,嵌套实现需要调用comment-reply JavaScript