wordpress无需插件实现拦截无中文留言的方法
Some Chinese Please插件可以拦截不带中文字的留言,本博客一直在用效果不错,不写入数据库,可有效地减少spam对服务器的无谓使用,其实可以将插件简化一下,直接用代码实现。
将下面代码加到主题functions模板文件中,效果与使用插件相同。
- /* refused spam */
- function refused_spam_comments( $comment_data ) {
- $pattern = '/[一-龥]/u';
- if(!preg_match($pattern,$comment_data['comment_content'])) {
- wp_die('评论必须含中文!');
- }
- return( $comment_data );
- }
- add_filter('preprocess_comment','refused_spam_comments');
注:如果出现无效的情况,请将 wp_die 替换为 err,否则显示错误信息时,会造成模版错位,其它使用ajax评论的主题也可参照修改。
其它一些写入数据库的防spam插件不建议使用, 比如WordPress官方的防垃圾插件Akismet会在数据库中留下大量的信息,增加服务器负担。
针对那些使用技术手段,比如GET、POST等方式不填写前台表单,直接读取后台程序文件的spam,只有屏蔽IP才能缓解疯狗一样的攻势,其它什么验证码、滑动解锁等等都没用。
可以在.htaccess文件中添加:
Order Deny,Allow
Deny from xxx.xxx.xxx.xx
Deny from xxx.xxx.xxx.xx
禁止某些IP访问。
本文来源知更鸟
上一篇:优化WordPress分类链接及WP-No-Category-Base的卸载方法
栏 目:WordPress
下一篇:WordPress速度优化-Nginx fastcgi
本文标题:wordpress无需插件实现拦截无中文留言的方法
本文地址:https://www.xiuzhanwang.com/a1/WordPress/12648.html
您可能感兴趣的文章
阅读排行
本栏相关
- 05-31wordpress修改后台登录地址教程
- 05-31WordPress自定义用户头像实现代码
- 01-11WordPress增加文章排序方式
- 01-11修改wordpress上传临时目录解决wordpre
- 01-11wordpress get
- 01-11自己做wordpress评论插件修改评论样式
- 01-11在wordpress文章末尾添加内容的简单方
- 01-11wordpress获取文章评论数过滤掉作者代
- 01-11wordpress dynamic
- 01-11不用wordpress插件显示文章浏览统计功
随机阅读
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-11ajax实现页面的局部加载
- 01-10SublimeText编译C开发环境设置
- 01-10delphi制作wav文件的方法
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 04-02jquery与jsp,用jquery
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10C#中split用法实例总结
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 01-10使用C语言求解扑克牌的顺子及n个骰子