插件推荐: Quick Comments

Quick Comments 是一个十分强大的 WordPress 评论插件, 它用到了 jQuery, 使用 AJAX 提交和更新评论, 还可以向评论者的邮箱或 Twitter 发送新评论通知. 选项灵活并且用户体验极佳.

该插件目前支持 classic, default, easyall, k2, sandbox 等多个著名的主题. 如果想要另它支持你的主题, 可能需要修改一下, 如 iNove 可以修改如下:
1. 打开 quick-comments.php, 并找到 149 行. (0.6.2 版)
2. 追加以下代码:

1
2
3
4
5
elseif ( preg_match('/^inove/i', $template) ) {
	$this->options_default['form'] = 'form#commentform';
	$this->options_default['list'] = 'ol#thecomments';
	$this->options_default['editReturn'] = '#comment-%ID%';
}

目前用 AJAX 提交评论的插件很多, 但这个插件的操作原理有些不一样. 评论提交后, 并不是在客户端直接生成新的评论, 也不是从服务器端返回格式化的最新评论. 而是在服务器端调用 comments_template() 方法生成整个评论内容, 然后进行提取并返回整个评论列表.

这样处理好坏参半, 却成了一个难以协调的矛盾, 且听我慢慢道来.
好处: 不用对新评论定义格式, 代码齐整, 外观好看, 使用方便.
坏处: 返回的文本信息很多, 当文本足够长的时候, 处理可能被中断掉, 客户端什么响应都没有, 用户体验坏极了. (当你的某篇文章有 500 条评论时, 这样的事情就可能发生了)

返回文本过长的问题其实可以解决, 怎么解决? 使用 WordPress 2.7 的评论分页功能. 也就是说, 每页的评论数是受限的, 所以可以防止返回文本过长问题. 如果你需要这样的效果, 也需要对插件稍微修改一下:
找到 comments_template(); 并修改为以下代码:

1
2
3
4
5
6
7
if (function_exists('wp_list_comments')) {
	global $wp_query;
	$wp_query = &query_posts($query);
	comments_template('', true);
} else {
	comments_template();
}

但这样修改还是有缺陷的, 也就是前面说的难以协调的矛盾. 如某文章有 5 页评论, 如果你在第 5 页进行评论, 那一切安然, 但如果你到 1~4 页进行评论, 将得不到响应, 你得跑到第 5 页才能见到你的评论. 如果想知道是不是, 不妨在我的博客上找篇文章试试.

该插件选项细化程度很高, 很灵活, 但我觉得作者在选项处理方面做得有点过了, 刚开始使用有点乱, 不过这并不影响它成为一个强大而好用插件. 我刚刚为这个插件做个简体中文语言文件, 明天 review 一下再发给作者吧.

最后, 感谢研发该插件的日本友人をかもとさん, 下载地址如下:
http://wppluginsj.sourceforge.jp/quick-comments/

2008/12/12 补充内容:

1. 这个插件只会处理日志文章的评论提交, 如果你想在页面或者其他支持评论的页面也使用, 那要简单修改一下. 在 quick-comments.php 文件中查找 is_single() && !$this->isKtai(), 一共有三处, 全部改为 (is_single() || is_page() || $withcomments) && !$this->isKtai()

2. 如文中所说, 该插件有个缺陷, 不能跨页显示提交的评论. 如果你的文章为零, 而你在评论列表内为此创建一个提示, 那么第一篇评论也不会被显示出来. 为什么呢? 因为插件在 JavaScript 中要对服务器的应答进行检测, 如果更新条目不改变, 那么就只插入提交的评论了 (但这里它抓不到最新提交的评论). 也就是说, 只要我们不要 check 就可以了.
在 quick-comments-0.6.1.js 中你可以找到 if (jQuery('input#update', form).size() > 0 ) 这样的判断条件, 当更新条目大于零时就更新, 否则进行插入处理. 你只要改一下这个逻辑, 让他在任何时刻都更新就 OK 了. 最后你还得对应着修改 quick-comments-0.6.1.min.js 这个压缩包文件 (其实只要修改这个就可以了). 如果你不懂程序, 或者比较懒, 那么你直接下载我的替换上去也可以. 下载地址 (请下载最新版本的插件)

2008/12/15 补充内容:

中文语言包: quick-comments-zh_CN.zip (新版本中已经集成该语言包)

声明: 本文采用 BY-NC-SA 协议进行授权. 转载请注明转自: 插件推荐: Quick Comments
  1. whisperer | #101
    Jul 22nd, 2009 at 20:04

    @a18ccms
    That's because your website URL is different from actual URL.
    这个可以在后台的 管理 常规里面改,
    我的真实地址是whisperer.name,但是原来我让它改成www.whisperer.name,这样它就认为不是一个地址。
    把这两个地址改成一样就可以了。 :lol:

  2. a18ccms | #102
    Jul 22nd, 2009 at 23:00

    老大也不帮忙。真郁闷。55555555555

  3. cooolo | #103
    Jul 25th, 2009 at 14:14

    你这个留言插件不错,能告诉我吗?

  4. Rui | #104
    Aug 15th, 2009 at 01:13

    jQuery很强很大 ;-)

  5. chen1706 | #105
    Aug 16th, 2009 at 11:27

    看下

  6. 冰剑 | #106
    Aug 19th, 2009 at 14:08

    测试下看看。。

  7. atom7 | #107
    Aug 25th, 2009 at 16:47

    thanks much ;-)

  8. ido | #108
    Aug 28th, 2009 at 03:51

    试一下~~~~~~~~~

  9. sok | #109
    Sep 6th, 2009 at 05:32

    试一下

  10. zrqx008 | #110
    Sep 18th, 2009 at 14:30

    mg12能不能介绍下设置呢?

  11. nasul | #111
    Oct 6th, 2009 at 14:15

    mg12, do you have a tutorial for the latest inove? thanks

  12. nasul | #112
    Oct 6th, 2009 at 14:21

    nasul :
    mg12, do you have a tutorial for the latest inove? thanks

    Sorry, my mistake, it`s working.

    P.S.: 10x 4 great theme (inove).

  13. 园子 | #113
    Oct 10th, 2009 at 10:04

    我想问下 mg12 网站上外部链接在新窗口打开是手动加代码还是使用了什么插件呢?

  14. bolo | #114
    Oct 10th, 2009 at 14:10

    @园子
    使用了JavaScript脚本,哈哈

  15. 园子 | #115
    Oct 13th, 2009 at 10:35

    @bolo
    能说下具体的实现方法吗?
    在网上找了
    都不太完美~

  16. 超人 | #116
    Oct 13th, 2009 at 22:19

    试下效果. 呵呵

  17. pwwang | #117
    Oct 14th, 2009 at 03:45

    Why it can not work with Elegant-box?

  18. Dianso | #118
    Oct 18th, 2009 at 22:11

    测试下异步评论

  19. 忆往事 | #119
    Nov 3rd, 2009 at 21:00

    我也测试一下吧。 :lol:

  20. JasonChao | #120
    Nov 17th, 2009 at 20:29

    测试一下

  21. 查伯 | #121
    Nov 21st, 2009 at 17:10

    我现在想找这插件,找的好辛苦。

  22. Alleluia | #122
    Nov 28th, 2009 at 20:18

    测试一下

  23. Eric | #123
    Dec 26th, 2009 at 23:43

    刚装上去但是留言刷新不来

  24. 北街 | #124
    Jan 8th, 2010 at 15:39

    来做个留言的测试! :lol:

  25. 星网 | #125
    Jan 20th, 2010 at 15:56

    看到超人了~!嘎嘎!

  26. 无念 | #126
    Feb 1st, 2010 at 11:47

    @星网
    看到星星了~!嘎嘎!

  27. 星网 | #127
    Feb 1st, 2010 at 12:31

    @无念
    o(╯□╰)o

  28. 朽木 | #128
    Feb 2nd, 2010 at 13:53

    来测试的。··

  29. ideacool | #129
    Feb 4th, 2010 at 09:34

    很受用,准备加上这个评论插件

  30. xinple | #130
    Feb 15th, 2010 at 00:30

    插件确实不错,但是最新的0.7.2版本有个bug:当settings-discussion中勾选Enable threaded (nested) comments 5 levels deep选项(回复评论嵌套)后,在reply某个评论之后,嵌套的表单一直停留在loading的界面,但评论已经发送成功。我不懂日语,愿您能帮忙联系作者修复此bug,谢谢,期待您的回复。

  31. episode | #131
    Mar 6th, 2010 at 20:50

    谢谢推荐,很欣赏你制作的主题。

Comment pages
1 2 3 802
  1. WordPress Plugins: Quick Comments at WordPress Today
    Dec 13th, 2008 at 10:25
  2. 推荐两个强大的 wordpress 评论相关插件 - xiaorsz's blog
    Dec 15th, 2008 at 15:09
  3. 独断と偏見の何でもレビュー
    Dec 15th, 2008 at 23:51
  4. [wp-plugins]inove的plugins (AJAX Comment Pager 與 Quick Comments )問題 | Dogen's Photo Snap
    Aug 10th, 2009 at 03:21
  5. WordPress必备插件 | 蛋馆
    Nov 29th, 2009 at 15:45

Twitter Email feed
RSS feed