Я пытаюсь отправить HTML по электронной почте. Когда я отправляю электронную почту без изображений или с изображениями из других доменов, это работает нормально. Но когда я помещаю изображение с моего хоста, оно вообще не отправляет электронную почту.
Я пытался отправить электронную почту с другого хоста, используя изображения из моего домена, похоже, работает.
У кого-нибудь была похожая проблема, и как я могу ее решить?
РЕДАКТИРОВАТЬ: вот функция, которую я использую.
function send_html_email($email = '', $template, $subject = '', $data = array()) {
/* email header */
ob_start();
require TEMPLATEPATH . '/email-templates/header.php';
$header = ob_get_contents();
ob_clean();
/* email content */
ob_start();
require TEMPLATEPATH . "/email-templates/{$template}.php";
$content = ob_get_contents();
ob_clean();
/* email footer */
ob_start();
require TEMPLATEPATH . '/email-templates/footer.php';
$footer = ob_get_contents();
ob_clean();
$message = $header . $content . $footer;
$headers[] = 'Content-type: text/html';
return wp_mail( $email, $subject, $message, $headers );
}
Я пробовал с wp_mail()
а также mail()
функции, обе возвращаются true
,
Не изобретай велосипед!
Отправка расширенной почты, жесткое кодирование их в функцию mails (HTML) — утомительная задача.
Вместо этого вы должны использовать что-то вроде PHPMailer или используйте пакет PEAR PEAR :: Mail_Mime.
Это потому, что есть немало подводных камней, если вы сами пишете свои сценарии.
Других решений пока нет …