У меня есть фрагмент кода, который выполняется, когда новый пользователь создает учетную запись на моем сайте.Код захватывает определенный 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);
Этот код работает нормально, и электронное письмо отправляется с использованием стандартного администратора.@ 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 в моем домене.
Хотя бы потому, что мой домен был авторизован, я мог бы отправлять электронные письма с любыми письмами, связанными с ним.К сожалению, это не так.
Есть ли способ установить адрес отправителя, не отправляя при этом почту в ящик для спама?
Любые комментарии / помощь будут оценены.Спасибо.