解决Micro-M主题添加Math Comment Spam Protection插件后页面变形问题

SPAM太多,导致自己想用一个小小的插件来过滤一下。IP不想搞,所以还是用这个简单的数字验证吧。不行了再换别的。下载并启用后格式会有错误,更改之后暂时正常了,凑合用吧。我的设置如下:

HTML code for the math question field:

***

Error Messages:
Error message being displayed in case of no answer (empty field) / not entered a number:
错误:请输入两数之和。
Error message being displayed in case of a wrong answer:
错误:请填写正确的两数之和。

更改之后提示出错的时候还会出现body变形的错误。查了一下原因是/wp-admin/css/install.css这个文件加载造成的。

寻找了一篇文章《修正Ajax-comments错误提示导致整体页面变形》http://www.nuodou.com/item/639.html,按照上面的方法可以解决变形的问题。

附文章大意如下:

修正Ajax-comments错误提示导致整体页面变形

导致变形的body样式来源于 /wp-admin/css/install.css 这个应该是根据wordpress源码调用。
由于不太愿意直接修改源代码,想到了错误既然来自js,那就可以用正则取消框中代码标签的显示。
我用的ajax评论效果的JS代码,是由Willin Kan编写的Ajax-Comments v1.3版。
在 comments-ajax.js 代码里搜索关键字“responseText”(其它版本也可以搜索这个关键字),这个是控制输出的,大概在 45 行:

$('#error').slideDown().html(' ' + request.responseText);

在其中加入正则,过滤掉上图框中的meta、title、link标签及其内容,完整代码如下:

$('#error').slideDown().html(' ' + request.responseText.replace(/<(?!p).*?>(?:.*?<\/.*?>)?/gi,''));

即添加的正则代码为:

.replace(/<(?!p).*?>(?:.*?<\/.*?>)?/gi,'')
15 Comments
  1. ➡ 囧。。还木有加评论验证码呢。。

    1. 啊?不太懂~你要加吗?正好可以参考一下,呵呵~

    1. 啊?怎么说?不太懂啦,不方便吗?不过用了之后效果是很不错,基本没有垃圾评论了~

  2. 先记下说不定以后有用。

  3. 加验证码的话,访客体验就不好了 呵呵 所以还是自己再想想办法

    1. 恩,这个也是没办法的事情。但是真的挺管用的呵。

  4. 建议取消验证码,用新版小强即可 😉

    1. 哎,我比较懒,等过年了有空再改吧,呵呵。Microhu再来个集成新版呗~

  5. 升级到3.3。。又出问题了。。。在红色叉叉处,溢出错误页的css样式。。。

    1. 额,这个,再调调呗~

Leave a Reply

Time limit is exhausted. Please reload the CAPTCHA.