最后,我找到了上述问题的原因和解决方法。
当我在子域中发送电子邮件时,例如http://test1.example.com 如果标头中没有自定义的“发件人”地址,则wp_mail()
函数本身将默认的“发件人”地址设置为support@test1.example.com
. 这无效,因此未发送电子邮件。
为了解决这个问题,我在标题中添加了一封自定义的“发件人”电子邮件,如下所示:
$headers[] = \'From: Sender Name <noreply@example.com>\';
这将在邮件头中设置有效的电子邮件地址。
您还可以使用以下过滤器进行设置:
add_filter(\'wp_mail_from\', function( $email ) {
return \'noreply@example.com\';
});
add_filter(\'wp_mail_from_name\', function( $name ) {
return \'Sender Name\';
});