更新一下 WordPress Ajax 评论提交

三月底,升级到 WordPress 5.1,comment_reply_link 函数更新,生成的回复链接没有了 onclick,主题『回复』按钮失效——回复评论时发现要点两次『回复』才能把 @xx 填进评论框,第一次点『回复』会刷新页面,第二次点才不会刷新,并且 comment-form 位置不会移动到要回复的评论下面。

主题使用大发版本 Ajax 评论提交,大改肯定改不来,只好直接修改『回复』按钮凑合。后来还有 js、钩子方法:修复 WordPress 5.1 评论回复按键失效问题

昨天逛博客,无意中发现大发早就(2019-3-26)更新代码,移除了脚本里集成 addComment 对象,并载入 WordPress 官方文档。于是跟着更新了一下主题 WordPress Ajax 评论提交代码。

原文:

大发 - WordPress Ajax 评论提交

5.1+ 新版本

新版本重构 addComment 对象使原来的代码失效了,于是移除了脚本里集成的 addComment 对象,并载入官方文档。

只要是4.4+ 版本即可使用。

下载地址

4.4+ 新版本

查看源码发现4.4新增了一个函数 wp_handle_comment_submission

这个函数可以看作是 wp_new_comment 升级版,用这个函数将大大减少AJAX回调函数代码量,简单说就是由原来几十行代码变成一行,而且过滤条件更加全面,非常之方便。 :idea:

本教程必须为4.4或以上版本,低版本直接使用会报错。

使用方法

下载压缩包里的文件,解压后将文件夹上传到主题根目录下,注意是加压后的文件夹,不是文件件中的文件。

下载地址

然后在functions.php中使用如下代码调用

require('ajax-comment/main.php');

配置适应主题

app.js第四行调整评论列表class

__list = 'comment-list';

main.php 中 formpostion 参数为评论表单位置

回调函数中评论样式可根据主题自行调整,但不要使用回复按钮,会报错。

代码已经过默认主题 twentysixteen 测试,没有任何问题。

旧版本

2015/11/17 更新

解决了当评论倒序排列时新评论无法出现在顶部的bug

增加了一个评论表单位置参数

编辑 do.php,找到 formpostion 参数(约第9行),默认为 bottom,如果表单在顶部则设置为 top。

2015/09/15 更新

处理了没有评论时刷新后才能显示新评论 bug,注意在 js 中修改自己的容器名。

增加了一个是否接受邮件通知的选项。

ajax 提交评论不但可以提升交互体验而且可以防止垃圾评论,一般垃圾评论都是通过表单机器人提交的,如果使用了 ajax 评论提交我们就可以禁用 WordPress 表单提交——删除或者清空 WordPress 根目录下 wp-comment-post.php 这个文件。

默认代码兼容wordpress 默认主题2015。

实现方法

下载压缩包,解压后把文件夹放到自己的主题目录中,在functions.php中加入如下代码即可。

require get_template_directory() . '/ajax-comment/do.php';

注意是把解压得到的文件夹放到主题目录下,不是文件夹中的文件。

兼容处理

由于主题结构的不同,可能出现的结果是虽然你成功提交了评论,但是刷新之前显示不正常,那么我们需要对相关函数进行处理

1.评论样式不一致

需要修改文件夹中的 do.php,修改其中的评论结构使之和你的一致即可

2.不显示新评论

这是因为包裹评论的容器和JS中的不一致,打开comments.php,看看你的容器名,然后修改ajax-comment.js中标注的位置即可,具体代码如下

__list = 'comment-list';//your comment wrapprer

3.注意你的评论结构使用的是ul还是ol,js中也要保持一直

4.修改文字提示样式需要修改压缩包内的css文件

5.如无文字提示则检查你的评论框textarea是否有id="#comment"

文件下载

各个版本代码下载:fa-ajax-comment(2020-12-12 整理),可能需要根据主题实际修改一下。

更新记录

2019-9-24:回滚了,引入 comment-reply.js 新方法,移动端原本评论@回复失效(改用新版本@可以解决这个问题),取消回复按钮失效(貌似官方取消回复就不会清除评论框已经输入的内容)。

2020-12-10:重新试用引入 comment-reply.js 新方法,不过还是不完美:回复评论后评论框不会回到原始位置;Ctrl+Enter 会连发评论……应该是与 comment-reply.js 没有完全兼容。

除非注明,沙唐桔文章均为原创,本文地址 https://cyhour.com/1143/,转载时必须以链接形式注明原始出处。
声明:我们不销售主机,选主机需合法使用。任何主机需定期备份,防止数据丢失。信息以实际为准,评测仅供参考不代表权威!
🔞:Netflix 奈飞 YouTube 合租免费节点Telegram 频道

使用 rclone 将 Google Drive 文件同步至 OneDrive

前几天上了博友「灵尘居」的 Office 365 车,1T OneDrive 到手,手机照片一直喂 Google AI,挺方便的,以前还会同步一份到家里的垃圾西数 NAS,不过并不太自动,后来就懒得弄了。 Google 虽然是大厂,但是数据只有一份,还是怕怕,多一个备份不是坏事。苹果 iCloud 不错,但是贼贵,况且我只有一个…
浏览: 121 标签:  ,  , 

尼康 D7100 中文使用说明书 高清 PDF 电子版免费下载

尼康 D7100 说明书是一份介绍详细尼康 D7100 单反官方教程,推荐购买了 D7100 单反博友下载保存参考,以便随时查看一些常用按键操作和使用技巧。 尼康 D7100 简介 尼康 D7100 搭载先进的对象捕捉性能和成像性能,能够忠实还原拍摄细节。高密度的 51 点自动对焦系统准确捕捉目标对象并进行跟踪,…

全网热门公共 BitTorrent Tracker 列表合集 加速BT下载

BT 下载速度取决于其他下载同一资源的用户上传速度。做种「指上传文件数据给其他 BT 用户的行为」用户越多,你的下载速度越快!如果资源没人提供上传,就会完全没有下载速度,而做种用户靠 Peer、DHT、Tracker 获得。 Tracker 是什么? BT 下载的文件都是其他用户上传给你的。 BT 下载速度…

换域名?改固定链接?

去年底注册了个短域名,虽然非主流,但是胜在够短,两字母,还没有溢价。一直寻思着把它转移到 Cloudflare,换到博客使用,无奈 Google Adsense 一直没能折腾审核通过。 WordPress 修改固定链接? 以前听说 postname 更有利于 SEO,曾经试过人工翻译。后来嫌麻烦,干脆只用 /%post_id%/,后面 .…
浏览: 111 标签:  ,  ,  , 
浏览: 108 标签:  ,  , 

Comments:17

  1. 沙唐桔-浮游
    浮游

    以前站点用动态程序的时候喜欢用pjax,效果很明显。现在用静态后,站点放在境外,网络不是很好,用的instant.page。不过不管站点是动态还是金泰,都建议上ajax或pjax,浏览上都能提高一层次的体验

    2019.09.23 11:59 # 回复
    1楼
    • pjax 貌似不好折腾吧?ajax 我都不会,都是拼人家的代码。

      2019.09.23 22:04 # 回复
      • 浮游

        应该不难,我记得以前用typecho的时候还弄过,我记得可以调用现成的js文件,像你这样的推荐资源、左邻右里、顶部等这些不变动的栏目可以不管它,其他的内容变动的地方,在对应的地方加上便签就可以了。图片多的话,建议你用用懒加载,网页打开会快很多

        2019.09.24 16:08 # 回复
        • @浮游 以前是有图片懒加载,后来觉得图片不多就去掉了。治标不治本,老老实实压缩图片,少上图片比较好。上 webp 好像也能加加速。不过在测试站还没折腾成功,囧……

          2019.09.25 12:07 # 回复
  2. 我想试试你的评论ajax

    2019.11.10 22:54 # 回复
    2楼
  3. 沙唐桔-黑猫
    黑猫

    感觉还可以啊

    2020.02.08 13:35 # 回复
    3楼
  4. 沙唐桔-cyclists
    cyclists

    我老是不成功,不知道啥原因,大佬可否教否?

    2020.12.10 04:20 # 回复
    4楼
    • @cyclists F12 看错误提示咯。

      2020.12.10 09:54 # 回复
      • cyclists

        @老杨 没有提示错误,大佬有空能否AJAX评论适配一下https://github.com/AgateLee/Kunkka这个主题呀,可付费。

        2020.12.14 01:13 # 回复
        • @cyclists 这主题貌似很久没有更新了啊,这几天找时间试试看。博客 WP 版本多少呢?

          2020.12.14 15:26 # 回复
          • cyclists

            @老杨 wp5.5.3,大佬

            2020.12.14 19:02 # 回复
            • @cyclists 试试:http://ct.0xo.net/file/12816724-475943579
              解压密码 1024,满意的话任意打赏,https://cyhour.com/about/#toc-15

              2020.12.15 09:17 # 回复
              • cyclists

                @老杨 不好意思哈,时隔一个月才来回复您,刚才给大佬微信打赏了16.8喝一杯奶茶,备注是kunkka相关,这一直忙,就忘记了网站,今天有空就下载了试了试,很完美,小小心意,不能让好人寒心,祝大佬新年快乐!

                2021.01.19 12:26 # 回复
  5. 沙唐桔-cyclists
    cyclists

    周末回复您,因为我在富士康进厂,上的是夜班,白天睡觉,晚上8点上班,没啥时间,只有周末放假去网吧

    2020.12.15 11:16 # 回复
    5楼
  6. 沙唐桔-cyclists
    cyclists

    如果不嫌弃,可以加我微信cyclistsing

    2021.01.19 12:27 # 回复
    6楼

发表留言

Vultr 送$100,搬瓦工年付最低$49,优惠码 BWH3HYATVBJW,更多推荐VPS信息