Wordpress函数antispambot()将电子邮件地址字符转换为html实体

WordPress函数antispambot()将电子邮件地址字符转换为HTML实体

WordPress函数antispambot()将电子邮件地址字符转换为HTML实体

  在 WordPress CMS内容管理系统中,antispambot()是 WordPress 中一个非常有用的函数,antispambot()是 WordPress 中的一个函数,它可以将电子邮件地址转换为一种机器无法识别但浏览器能够正确显示的格式,从而防止博客内容中的电子邮件地址被垃圾邮件收集器收集。

  推荐:WordPress函数allow_subdirectory_install()检查多站点网络是否允许允许子目录安装

antispambot()函数基本语法

描述

  将电子邮件地址字符转换为HTML实体

用法

$email = "hello@world.com";
$safe_email = antispambot($email);
echo $safe_email;  // Prints the obfuscated email
  • $email_address (string)您想要混淆的电子邮件地址。
  • $hex_encoding (int)可选参数。设置为 1 以启用电子邮件的十六进制编码。

  推荐:WordPress电子邮件营销自动化插件FluentCRM Pro插件

antispambot()函数

  在 WordPress 中,该add_role()功能将电子邮件地址字符转换为 HTML 实体以阻止垃圾邮件机器人。(源文件可参考这里

function antispambot( $email_address, $hex_encoding = 0 ) {
	$email_no_spam_address = '';

	for ( $i = 0, $len = strlen( $email_address ); $i < $len; $i++ ) {
		$j = rand( 0, 1 + $hex_encoding );

		if ( 0 === $j ) {
			$email_no_spam_address .= '&#' . ord( $email_address[ $i ] ) . ';';
		} elseif ( 1 === $j ) {
			$email_no_spam_address .= $email_address[ $i ];
		} elseif ( 2 === $j ) {
			$email_no_spam_address .= '%' . zeroise( dechex( ord( $email_address[ $i ] ) ), 2 );
		}
	}

	return str_replace( '@', '&#64;', $email_no_spam_address );
}

  推荐:WordPress函数allow_subdirectory_install()检查多站点网络是否允许允许子目录安装

如何使用antispambot()

  基本用法,此代码会混淆给定的电子邮件地址,然后打印它。

$email = "test@example.com";
$safe_email = antispambot($email);
echo $safe_email;  // Prints obfuscated email

  启用十六进制编码,在此示例中,我们还通过将1作为第二个参数传递给antispambot()函数来启用十六进制编码。

$email = "test@example.com";
$safe_email = antispambot($email, 1);
echo $safe_email;  // Prints obfuscated email with hex encoding

  在超链接中使用,此代码创建一个可点击的电子邮件链接,可以免受垃圾邮件机器人的攻击。

$email = "test@example.com";
$safe_email = antispambot($email);
echo '<a href="mailto:' . $safe_email . '">Email me</a>';

  使用短代码来隐藏电子邮件,此代码创建一个WordPress短代码,用于混淆其中的电子邮件地址。

function wpdocs_hide_email_shortcode($atts, $content = null) {
    if (!is_email($content)) {
        return;
    }
    return '<a href="mailto:' . esc_url(antispambot($content)) . '">' . esc_html(antispambot($content)) . '</a>';
}
add_shortcode('email', 'wpdocs_hide_email_shortcode');

  在内容中使用短代码,此代码演示了如何在内容区域中使用创建的短代码来混淆电子邮件地址。

// In your WordPress content area, you can now use:
[email]john.doe@mysite.com[/email]

  推荐:修复WordPress允许的内存大小已耗尽错误

  推荐:WordPress函数使用手册


滚动至顶部