• 售前

  • 售后

热门帖子
入门百科

wordpress无需插件实现拦截无中文留言的方法

[复制链接]
123456823 显示全部楼层 发表于 2021-8-15 20:08:03 |阅读模式 打印 上一主题 下一主题
Some Chinese Please插件可以拦截不带中文字的留言,本博客不绝在用效果不错,不写入数据库,可有用地减少spam对服务器的无谓利用,其实可以将插件简化一下,直接用代码实现。
将下面代码加到主题functions模板文件中,效果与利用插件相同。

PHP Code复制内容到剪贴板
       
  • /* 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访问。
本文泉源知更鸟

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作