Я создаю приложение, которое отвечает на электронные письма от имени моих пользователей приложений. Эти письма отправляются моим пользователям и перехватываются моим приложением, чтобы автоматически реагировать на их клиентов. Письма поступают от третьих сторон и содержат фирменное форматирование.
Мое приложение PHP принимает полный HTML-адрес электронной почты, сохраняет его в таблице MySQL, затем создает ответ и добавляет HTML под <hr/>
в нижней части письма.
Это работает, и это похоже на ответ (это мое намерение (хотя я буду строить некоторые детали заголовка, чтобы сделать его более законным, как если бы он был отвечен в Outlook или аналогичном)).
Моя проблема, однако, заключается в том, что этот метод повреждает форматирование ответа – кажется, он принимает стили, такие как высоту строки из исходного HTML-адреса электронной почты в нижней части ответа.
Таким образом, мой вопрос: как создать ответное письмо? Делайте то, что я делаю, и лучше отвечаю за мой ответ, или мне нужно сделать больше с полным оригиналом, а не только с выходом HTML. И даже нормально ли иметь HTML-теги в электронном письме?
Мне было бы очень приятно, если бы ответ был примерно таким: извлеките X из электронной почты и постройте ответ с помощью библиотеки Y с открытым исходным кодом 🙂
EDIT: примеры по электронной почте по запросу
В этом электронном письме третьей стороны есть голова, которая выглядит так:
<html> <head> <style type='text/css'> body{font-family: arial,helvetica,sans-serif;} a{color: #06c;} p{margin:0;} #message{width:600px;margin:0 auto;} .legal{margin-top:2em;} .footer{margin-top:1em;padding:5px;background:#999999;color:#fff;} .footer a{color:#fff;} .senderName,.label{font-weight:bold;} .link,.label,.hint{margin-top: 20px;} .header-separator{height:4px;background-color:#e4002b;width:100%;margin-top:17px;} tr,td{vertical-align:top;text-align:left;} img{border:0;} ${css!""} </style> </head> <body> <div id='message'> ...
И мои пользовательские шаблоны электронной почты (встроенные в TinyMCE) будут выглядеть примерно так:
<p><span style="font-family: Calibri, sans-serif; font-size: 11pt; line-height: 14pt;">Dear [name],</span></p> <p><span style="font-family: Calibri, sans-serif; font-size: 11pt; line-height: 14pt;">Thanks for your enquiry ...
Когда я отправляю электронное письмо в службу электронной почты, это просто:
$emailreply = $userTemplate . '<hr/>' . $originalEnquiry;
Неужели это недостаточно хорошо? Кроме того, это письмо, в котором я упоминал, где затронута линия-высота, поэтому мои пользовательские шаблоны не отправляются в соответствии с запросами.
Это редко встречается в электронном письме третьей стороны, разделяя <style >
когда обычная процедура разработки электронной почты HTML заключается в настройке всех стилей в строке.
Логично, что эти стили (из <style >
повреждают ваш новый код). Лучшим вариантом является создание всего этого стиля (от стороннего электронного письма), поэтому вы можете удалить <style >
, сохраняя оба стильный дизайн электронной почты.
Как вы сказали, PHP App , я думаю, вы можете использовать некоторые из следующих:
И убедитесь, что если выбранный из вышеперечисленных инструментов не удаляет <style>...</style>
, удалите его самостоятельно (вы можете сделать это с помощью регулярных выражений).
Надеюсь это поможет. Удачи