修复 WordPress 5.1 评论回复按键失效问题

卑微的_執著 发表于 2024年2月8日 浏览 108 分类 未分类

今天早上闲着无聊点了一下 WordPress 更新按键,从 5.0.3 更新到了 5.1,没想到出现了评论回复按键失效的问题,瞬间懵逼,因为电脑不方便联网根本没法排查故障,结果 bug 挂了一整天=.=

回来仔细看了一下,发现问题是因为 WP 更新了 comment-reply-link() 函数的输出。原本输出的 reply 按键,其 HTML 标签带有一个 onclick 事件,绑定了 addComment.moveForm() 事件,Sakura 主题、以及正在写的 Gorgeous 主题评论回复都利用了这个 onclick 事件,而在 WP 5.1 中,这个 onclick 事件被移除了,如图,上方的是 WP 5.1,下方是 WP 5.0:

因此修复这个问题的方法就是为 reply 按键添加一个 click 事件监听器。以 Sakura 主题为例,用 jQuery 实现:

$('body').on('click', '.comment-reply-link', function(){
addComment.moveForm( "comment-"+$(this).attr('data-commentid'), $(this).attr('data-commentid'), "respond", $(this).attr('data-postid') );
return false; // 阻止 a tag 跳转,这句千万别漏了
});


对于 WP 这个改动的出发点我觉得挺好,因为总感觉 inline 的 onclick 事件挺 low 的(虽然 Sakura 主题里面用了不少23333),不过忽然这样毫无征兆和说明地取消原有接口挺不好,WP 本应提供一个 hook 让我们可以自由地决定是否保留原有方法,不是吗?

喜欢这篇内容吗?

相关内容

WordPress显示图片alt属性为空

  • 未分类

啊噗啊噗小程序隐私保护指引

  • 未分类

在网页上展示你的炉石卡组吧

  • 未分类
友情链接
联系我们
Copyright © 2021-2025 执著星和

互联网ICP备案:粤ICP备20010441号粤ICP备2022023645号粤ICP备2023101295

互联网小程序ICP备案:粤ICP备2023101295号-1X

互联网公安备案:粤公网安备 44010602010118号

萌备案:萌ICP备20211223