WordPress отправляет содержимое электронной почты как вложение .HTML

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

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

file_put_contents не вариант.

wp_mail($to, $subject, $template, $headers, $mail_attachment);
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
130
2

Ответы 2

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

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

Вы можете использовать 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'])

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

Другие вопросы по теме