WordPress Отправить содержимое электронной почты в виде вложения .HTML - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть электронное письмо с содержанием HTML, которое не подходит для стандартов электронной почты.Это означает, что у него есть разметка, которая недопустима в стандартах электронной почты.

Мне нужно отправить эту переменную содержимого / PHP в виде файла HTML, а не в качестве содержимого тела письма.Я использую wp_mail.Я просто хочу взять переменную $ template, сделать ее как-то html-файлом и отправить ее.Ниже приведена простая функция wp_mail, которую я использую.Опять же, мне нужно использовать переменную $ template и каким-то образом сгенерировать из нее HTML-файл.

file_put_contents - не вариант.

wp_mail($to, $subject, $template, $headers, $mail_attachment);

Ответы [ 2 ]

0 голосов
/ 19 декабря 2018

Можно рассмотреть wp_upload_bits для создания файла шаблона, поскольку wp_mail принимает только файлы для вложений:

$html_file = wp_upload_bits('test.html', null, $template);

и затем вызывает wp_mail, чтобы отправить прикрепленный html:

wp_mail($to, $subject, 'your message', array('Content-Type: text/html; charset=UTF-8;'), array($html_file['file']) );

Не забудьте проверить объект $html_file, $html_file['error'] должно быть ложным.

Наконец, вы можете удалить файл с сервера:

unlink( $html_file['file'])

Надеюсь, это поможет!

0 голосов
/ 04 декабря 2018

Как насчет $ myfile = fopen ('myHTMLFile.html', 'w');

И с помощью fwrite () вы помещаете туда свой контент и отправляете его.

...