米拓建站,500套模板主题任你选
阿里云优惠大拼团

WordPress转义文章和评论中的邮箱地址以防被恶意采集

Loading
0
《LINUX就该这么学》运维人员必学的LINUX系统自学手册

几乎每个人都会遭到垃圾邮件的困扰,其实很多情况下,是由于我们的邮箱地址被恶意采集造成的,如果你使用WordPress建站,那你可以使用一段简单的代码让WordPress转义文章和评论中的邮箱地址,以防被恶意采集。

只需要在wordpress主题的 functions.php 的最后一个 ?> 前添加下面的代码即可:

1
2
3
4
5
6
7
8
9
10
11
function security_remove_emails($content) {
    $pattern = '/([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+.[a-zA-Z]{2,4})/i';
    $fix = preg_replace_callback($pattern,"security_remove_emails_logic", $content);
 
    return $fix;
}
function security_remove_emails_logic($result) {
    return antispambot($result[1]);
}
add_filter( 'the_content', 'security_remove_emails', 20 );
add_filter( 'widget_text', 'security_remove_emails', 20 );

该代码是通过wordpress的antispambot函数来转义邮箱地址的,添加以上代码后,你可以尝试你的某篇文章中输入一个Email地址,更新后查看这篇文章的源代码,就会看到转义后的邮箱地址。

如Email地址:john@a.com

转义后,源代码中看到的是:john@a.com

邮箱地址采集器都是通过源代码来采集Email地址的,转义后的内容对它们来说几乎是无法识别的。虽然在源代码中你会看到一堆乱码,但是你的文章和评论中,我们还是可以看到正常的Email地址,并可以自由地复制的。

本文参考自:How to automatically hide email adresses from spambots on your WordPress blog 以及 露兜博客

支付宝扫码打赏 微信打赏

如果本文对你有帮助,请打赏作者,鼓励我们继续写作!

阿里云优惠大全

关于 倡萌

一个疯狂的 WordPress 爱好者,喜欢折腾 WordPress 主题,分享 WordPress 资源。如果你也喜欢 WordPress,欢迎和我一起交流!

精彩推荐

WordPress 3.7+ 配置后台自动更新

处理部分WordPress核心代码或功能,让你的网站更快

6 条评论

  1. 我表示我写的一个程序还是可以直接采集使用了这段代码的邮箱。eget.sinaapp.com 。。。

  2. 我收到的垃圾邮件中经常直接写出了我的名字,你说他们这是怎么采集的?

发表评论