wordpress wp_mail将我的html消息作为文本附件发送

时间:2013-07-05 12:22:27

标签: wordpress

这是发送邮件的代码:

$to = $_POST['leadEmail'];
$subject = "my subject";
$message = ( $_POST['leadEmailPref'] == "html" ) ? $messageh : $messagep ;
$headers[] = "From: My Name <ny_name@gmail.com>";
$headers[] = "Content-type: ".$_POST['leadEmailPref'] ;

wp_mail( $to, $subject, $message, $headers );

当我进入收件箱时,邮件将作为附件发送,我看不到该邮件。显然我不想要附件,我希望收到电子邮件的人立即看到该消息。

2 个答案:

答案 0 :(得分:8)

您的Content-type:错了。它应该是text/htmltext/plain,而不是html

$headers[] = "Content-type: text/".$_POST['leadEmailPref'] ;

答案 1 :(得分:2)

你应该尝试:

add_filter( 'wp_mail_content_type', 'set_html_content_type' );

wp_mail( 'To Email', 'Subject', '<h1>Html Email</h1>' );

function set_html_content_type() {
    return 'text/html';
}

remove_filter( 'wp_mail_content_type', 'set_html_content_type' );