emlog pro 更新到 1.9.0 后,default 模版引入了一个 bug。

表现

bug 的影响不大,就是在前台进行评论时,回复别人的内容,点击回复,回复完毕后页面跳转,会发现没有回复你想回复的那条评论,而是又新开了一条评论。
当然,一般情况下,在前台进行相互回复比较少见,很多时候是在后台在审核时连带回复了。当然这个 bug 也要解决。

原因

1.9.0 的评论区的评论条目的 id 变了,以前是 comment-2、comment-14 这种,现在是直接成数字了,2、14,其目的是为了兼容 emlog 系统原来内置的 评论链接,比如访问 127.0.0.1/?post=2#24 就能自动跳转到这个文章页面的 id 为 24 的评论。
但,html 这里改了,common_tpl.js 可没跟着改,于是在点击「回复」按钮时,其动作函数无法获取到 id 号了。
EMLOG修复一个默认模版评论表单的bug(无法在前台正常回复其他评论) 第5张插图

解决方案

很简单,就是在后台的【系统】--【设置】--【基础设置】--【首页底部信息】 下面添加如下的代码。
当然,只有使用 default 模板才有效,其他模板请忽略这篇文章。

因为 common_tpl.js 会后于 上面这段代码运行,所以,上面那个改 value 的动作,是在 1 秒(也就是 1000 毫秒)以后才执行。

备注

系统修复这个 bug 很简单,就是把 common_tpl.js 里的 getpid = $ele.parent().attr("id").substring(8) 后面的 .substring(8) 去掉。

如果模板开发者要参考 default 时,请务必注意这一点。