wordpress文章采集软件(一下如何做到不影响用户体验(图)被恶意扫描收集)
优采云 发布时间: 2022-03-23 02:04wordpress文章采集软件(一下如何做到不影响用户体验(图)被恶意扫描收集)
现在网上有很多爬虫工具,专门扫描采集网站代码中出现的邮箱地址,以谋取私利。一些博主和站长将邮件中的“@”替换为“#”,但这也会影响用户体验。,而且很容易被机器人看到。那么今天我们就来分享一下如何在不影响用户体验的情况下,防止被恶意扫描采集邮箱地址。
反垃圾邮件功能
WordPress 具有反垃圾邮件功能,可将电子邮件地址字符转换为 HTML 实体,使 采集器 无法识别电子邮件地址并保护您的邮箱免受垃圾邮件的侵害。同时允许其他网友自由复制Email地址,无需制作成图片形式,影响用户体验。
方法一:手动添加短代码,防止在当前主题的functions.php中采集在最后一个?>前面添加如下代码:
// WordPress 防止机器人扫描邮箱
function Bing_antispambot( $attr, $content ){
return antispambot( $content );
}
add_shortcode( 'jsk_email', 'Bing_antispambot' );
当需要在文章中插入邮箱时,需要编写如下短代码(PS:可以做一个按钮,集成到编辑器中):
[jsk_email]boke@qq.com[/jsk_email]
效果验证:
如上图所示,前台显示的邮箱不影响用户体验,阅读非常直观,可以随意复制;文章源码中显示的邮箱地址已经转义,可以防止被扫描采集。.
注意:此方法只适用于文章内部,以评论格式输入的电子邮件地址不会被转换。
方法二:网站自动转换邮箱地址,防止在当前主题的functions.php中采集在最后一个?>前面添加如下代码:
// WordPress防止邮箱采集器收集文章和评论中的Email地址
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( 'comment_text', 'security_remove_emails', 20 );
您可以直接在文章 或评论中输入电子邮件地址。发布或提交后,前台可以直接看到正常的邮箱,但是源码显示的是转义的邮箱。效果验证:
如上图,直接在文章和评论中输入邮箱地址,前台可以直观的看到邮箱地址,可以手动复制;文章中显示的邮箱地址和注释源代码地址是转换后的代码,说明起到了保护邮箱地址的作用。
方法一在代码上比较简单,但是添加邮箱的方法比较复杂,评论区不起作用,所以适合在文章中偶尔出现邮箱的网站;方法二是全自动的,同样适用于文章和评论功能强大,适用于文章和评论经常出现邮箱地址的网站。综上,建议直接使用方法二。