Всем привет, в одной статье по рассылкам была рекомендация слать сразу несколько типов писем (html и txt), чтобы на разных устройствах, клиентах письмо точно нормально отображалось.
Собственно вроде как это возможно если я все правильно понимаю, но как это сделать я так и не нашел. В сети попадаются примеры с отправкой либо только обычного текста, либо html.
Как совместить это и отправить через функцию mail() в php ? Возможно у вас есть пример ?
Речь идёт о multipart/alternative значении заголовка Content-Type. Этот вариант позволяет описать несколько вариантов одного содержимого и является частью multipart письма.
Функция mail в php слишком низкоуровневая для таких вещей. Поэтому вам необходимо либо самостоятельно сформировать всё письмо согласно всем релевантным RFC либо воспользоваться готовой библиотекой. Например, PHPMailer позволяет сформировать msgHTML и указать AltBody, который будет отправлен текстовой альтернативой для этого HTML.
Ну а я если очень хочется, то читайте RFC, на один документ я ссылку указал и процитирую из него письмо с несколькими альтернативными форматами отображения:
From: Nathaniel Borenstein <nsb@bellcore.com>
To: Ned Freed <ned@innosoft.com>
Date: Mon, 22 Mar 1993 09:41:09 -0800 (PST)
Subject: Formatted text mail
MIME-Version: 1.0
Content-Type: multipart/alternative; boundary=boundary42
--boundary42
Content-Type: text/plain; charset=us-ascii
... plain text version of message goes here ...
--boundary42
Content-Type: text/enriched
... RFC 1896 text/enriched version of same message
goes here ...
--boundary42
Content-Type: application/x-whatever
... fanciest version of same message goes here ...
--boundary42--
Сборка персонального компьютера от Artline: умный выбор для современных пользователей