在WP_Mail标头中设置“发件人地址”会导致电子邮件转为垃圾邮件

时间:2019-02-26 15:55:13

标签: php wordpress email spam-prevention

我有一段代码,是当新用户在我的网站上创建一个帐户时执行的。该代码从我的网站中获取特定的HTML模板,并用新的客户详细信息替换占位符,然后触发电子邮件。

$email_template = file_get_contents(get_stylesheet_directory_uri() . '/emails/New_user_account_mail.html');

$html = str_replace(
                           ['[user_first_name]', '[user_email]', '[user_security_code]' ],
                           [ $new_account_first_name, $new_account_email, $url  ],
                           $email_template);

$headers = array('Content-Type: text/html; charset=UTF-8');


wp_mail( $new_account_email, 'Please activate your account', $html, $headers);

此代码可以正常工作,并且使用标准的admin@mydomain.co.uk电子邮件发送一封电子邮件,但是,一旦我尝试设置“发件人地址”,所有邮件就会立即定向到垃圾邮件文件夹中。

如果我恢复为原始代码,电子邮件将立即发送到普通收件箱。

我一直使用以下方法设置发件人地址:

$headers[] = 'From: my name <welcome@mydomain.co.uk>' . "\r\n";
$headers[] = 'Content-Type: text/html; charset=UTF-8';

可能值得注意的是,我正在使用Mailjet SMTP,并且在我的域中正确配置了SPF和DKIM。

尽管如此,因为我的域已被授权,所以我能够发送包含任何与之相关的电子邮件。不幸的是,事实并非如此。

有没有一种方法可以设置“发件人地址”,而不会使邮件进入垃圾邮件箱?

任何评论/帮助将不胜感激。谢谢。

0 个答案:

没有答案