拒绝全英文垃圾评论!仅用代码实现

从无人问津到略有评论,再到垃圾评论的“空袭”,这大概是每个wordpress博主都会经历的事。对付垃圾评论,一般人通常是安装wordpress官方的Akismet插件。

但是你应该发现,这些垃圾评论绝大部分是全英文的评论;再说到Akismet插件的误伤率是在是太大,且耗服务器资源。其实我们只要屏蔽全英文的评论就可以了(毕竟你个中文博客还有老外成为你的读者?),而这在实现方面是在是简单,又是添加几行代码就行了。减少一插件,何乐而不为?

下面Jeff就为大家带来无插件仅代码实现拒绝全英文垃圾评论的方法。

打开主题目录下的funtions.php,就在最后一个 ?>加入如下的代码:

<!--?php <br ?--> // 禁止全英文评论
add_theme_support('automatic-feed-links'); // Add default posts and comments RSS feed links to head
function scp_comment_post( $incoming_comment ) {
$pattern = '/[一-龥]/u';
if(!preg_match($pattern, $incoming_comment['comment_content'])) {
wp_die( "You should type some Chinese word (like \"你好\") in your comment to pass the spam-check, thanks for your patience! 您的评论中必须包含汉字!" );
}
return( $incoming_comment );
}
add_filter('preprocess_comment', 'scp_comment_post');
?>

如果使用的是Ajax 评论,需要将wp_die 改为 err ,不然页面会有错位现象。

保存后就完成了。试着输入全英文评论,你看看显示什么?

效果如下面:

You should type some Chinese word (like \”你好\”) in your comment to pass the spam-check, thanks for your patience! 您的评论中必须包含汉字!

哈哈!又一个插件宣告“退役”!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏linux驱动个人学习

VFS四大对象之二 struct inode

继上一篇文章:https://cloud.tencent.com/developer/article/1053842 二、inode结构体:(转自http://...

5817
来自专栏偏前端工程师的驿站

前端构建:Source Maps详解

一、前言                            当使用CoffeeScript、ClojureScript编写前端脚本时,当使用Less、Sa...

2308
来自专栏分布式系统进阶

Kafka源码分析-配置文件

作为Class KafkaConfig的伴生类,定义了创建KafkaConfig对象的工厂方法:

901
来自专栏奇梦博客

Xiuno如何修改首页和版块列表页默认排序为发帖时间排序

这里举一个例子: 目前Xiuno首页和版块列表页排序是根据发帖时间+回复时间;按照以下方法修改首页和版块列表页默认排序为发帖时间排序; 找到:/model/th...

1572
来自专栏CDA数据分析师

学会这几招,轻松掌握Python文件管理

一、Python中的文件管理 文件管理是很多应用程序的基本功能和重要组成部分。Python可以使文件管理极其简单,特别是和其它语言相对比。 以下,Peyton ...

3046
来自专栏程序员的知识天地

Python实现一个代码行数统计工具

我们经常想要统计项目的代码行数,但是如果想统计功能比较完善可能就不是那么简单了, 今天我们来看一下如何用python来实现一个代码行统计工具。

2081
来自专栏芋道源码1024

分布式消息队列 RocketMQ 源码分析 —— Message 拉取与消费(上)

摘要: 原创出处 http://www.iocoder.cn/RocketMQ/message-pull-and-consume-first/ 「芋道源码」欢迎...

3696
来自专栏风中追风

java类的加载过程和类加载器的分析

我们知道,我们写的java代码保存的格式是 .java, java文件被编译后会转换为字节码,字节码可以在任何平台通过java虚拟机来运行,这也是java能够跨...

5548
来自专栏xcywt

《Linux命令行与shell脚本编程大全》第十九章 初识sed和gawk

这两个工具能够极大简化需要进行的数据处理任务。 19.1 文本处理 能轻松实现自动格式化、插入、修改或删除文本元素的简单命令行编辑。 sed和gawk就具备上述...

2105
来自专栏IMWeb前端团队

上手 yeoman generator

最近折腾脚手架相关的一些事情。说到脚手架,不得不谈的就是yeoman了。 是什么 yeoman是一个脚手架生成工具。 yeoman generator则是yeo...

2365

扫码关注云+社区

领取腾讯云代金券