完美适用于 WordPress3_5+ 的 Willin 版本 AJAX 评论提交详解

jerry wordpress 2015年08月09日 收藏

1. 前提
条件一:先确定自己所用主题的评论列表调用是否使用 WordPress 官方推荐的 wp_list_comment() 函数(一般在 comments.php)
条件二:如果“条件一”满足,那么看看 wp_list_comment() 有没有加回调函数参数(callback=ooxx),如果有请检查是否跟 WP 官方的回调函数示例类似,这里看 http://codex.wordpress.org/Function_Reference/wp_list_comments
条件三:看看评论框是否使用 comment_form() 函数生成,如果不是,请确保html结构差不多,特别是输入框的ID是否为 comment
2. 下载(zwwooooo 修改过的适用于 WordPress 3.5+ 的 willin AJAX 评论提交 1.3 版本)
130306-comments-ajax-1.3-zww-wp3.5.2.zip下面有下载地址
解压后得到大家非常熟悉的2个文件:comments-ajax.js、comments-ajax.php,然后放到所使用的主题目录下
3. 必要的修改
a)看看主题 header.php、footer.php 或者 functions.php 有没有这样的函数:

wp_enqueue_script( 'comment-reply' );

如果有,删除或者注释掉。

b)确定所用主题的 header.php 里面 </head> 前有 <php wp_head(); ?> 和 footer.php 里面 </body> 前有 <?php wp_footer(); ?>c)直接在 functions.php 加上如下代码来加载 jQuery 库和 comments-ajax.js 文件

if (!is_admin()) {
    function zfunc_scripts_method() {
        wp_enqueue_script('jquery');
        if (is_singular()) {
            wp_enqueue_script('comments_ajax_js', (get_template_directory_uri()."/comments-ajax.js"), false, '1.3', true);
        }
    }
    add_action('wp_enqueue_scripts', 'zfunc_scripts_method');
}

(注:如果主题在其他地方加载了 jQuery 库,可以删除 wp_enqueue_script('jquery');)
ps:默认没开启评论“再编辑”功能,如有需要修改 comments-ajax.js 第 11 行

edit_mode = '0'

改为

edit_mode = '1'


下载地址