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

我们基本都会遭到网络垃圾邮件的困扰,很多情况下是由于我们的邮箱地址被恶意采集造成的,因为在网络交流的过程中定会在文章内容或评论中留下 E-mail地址,这样你的 E-mail地址就会被邮箱地址采集器收集走,垃圾邮件就会像秋天的落叶一样纷纷而至。

现在如果你使用的是 WordPress建站程序,那你就可以使用一段简单的代码让 WordPress转义邮箱地址在文章和评论中,以防被恶意采集。

wordpress转义邮箱地址

 

将以下 php代码复制粘贴到你的当前主题的 functions.php文件中,保存后 WordPress就会自动帮你转义文章内容和评论内容中的 E-mail地址(不会影响其他地方的E-mail):

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

该代码是通过 wordpress的 antispambot函数来转义邮箱地址的,添加以上代码后,让采集器无法识别 E-mail地址,保护你的邮箱不受垃圾邮件的骚扰。同时又可以让其他网友可以自由地复制 E-mail地址,而不必做成图片的形式,影响用户体验。

之后你可以尝试你的某篇文章中输入一个 E-mail地址,更新后查看这篇文章的源代码,就会看到转义后的邮箱地址。

例如 E-mail地址:john@a.com

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

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

 后续延伸:

在网络上你经常会遇到有人发帖声称他有你需要的东西可以提供下载,但必须留下邮箱再发给你。这时候如果你特别需要这个东西,你可能就会留下你的邮箱地址。

可结果你想要的东西可能发给你了,但是垃圾邮件也像洪水一样涌来。原因就是你的 E-mail地址被自动邮箱地址采集器收集走了,有没有什么办法解决类似情况的临时邮箱需求呢?

答案是有的,可以参考:用一次性邮箱获取验证码临时注册网站论坛
 

转载请注明链接地址:荐爱小站 » 转义文章和评论中邮箱地址以防被恶意采集的WordPress代码

赞 (0) 赏 !

觉得文章有用就打赏一下吧,赠人玫瑰手有余香!

支付宝扫一扫打赏

微信扫一扫打赏