CakePHP emailFormat («оба») против emailFormat («html») и emailFormat («текст») - PullRequest
0 голосов
/ 03 декабря 2018

В документации cakephp указано, что вы можете использовать как текстовые, так и html-файлы шаблонов, если настроите их следующим образом:

$email = new Email();
$email
    ->template('welcome', 'fancy')
    ->emailFormat('both')
    ->to('bob@example.com')
    ->from('app@domain.com')
    ->send();

При этом будут использоваться следующие файлы шаблонов:

src/Template/Email/text/welcome.ctp   
src/Template/Layout/Email/text/fancy.ctp   
src/Template/Email/html/welcome.ctp   
src/Template/Layout/Email/html/fancy.ctp

Как он использует здесь html и текстовые файлы?Проверяет ли он текстовые и HTML-файлы при создании представления?Что если в этих шаблонах есть различия?

1 Ответ

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

При установке emailFormat на both, CakePHP поместит оба шаблона в электронное письмо и установит заголовок типа содержимого сообщения на multipart/alternative.При таком поведении принимающей стороне будут предоставлены две версии одного и того же сообщения, и они смогут выбирать, какую использовать.

Это означает, что вы можете предоставить пользователям насыщенную и роскошную версию HTML для отображенияон также предоставляет простую текстовую версию вашего сообщения, которая будет использоваться почтовыми клиентами, которые не могут (или отказываются) отображать электронные письма в формате HTML.

Для получения дополнительной информации см. этот вопрос и ответ., а также на RFC .

...