Yii2 Email Рассылки

yii2 email рассылки

Yii 2 - Отправка писем с помощью Swiftmailer В Yii 2 уже встроен по умолчанию компонент отправки писем, в качестве которого используется Swiftmailer. Рассмотрим на примере тонкости работы с этим компонентом, такие как передача параметров в layout и пр. Задача Необходимо настроить отправку писем, так что бы: В данной статье будет использован "чистый" basic шаблон приложения Yii 2, который можно установить через Composer следуя этой инструкции. Вообще это не обязательно, но желательно. Конечно сейчас мало у кого не поддерживаются HTML письма, но так лучше скорее всего и для почтовиков, возможно это уменьшит вероятность попадания в спам, если возникнет такая ситуация.

В basic шаблоне приложения Yii 2, который используется в этой статье, уже есть один макет html. Далее создаем два новых макета, HTML и текстовую версии.

Добавляем шаблон view Теперь добавим пробный шаблон письма. Также как и с layouts, для views необходимо создавать две версии: Но она имеет упрощенный вид, и даже не взаимодействует с БД. Для примера описываемого в этой статье, этой упрощенной модели вполне достаточно. Единственное, чего в ней не хватает, это поля e-mail, в котором бы хранился e-mail адрес пользователя, добавим его: Создаем метод для отправки писем Теперь мы подошли к самому главному, написанию метода, который будет отправлять письма пользователям.

В следующем участке кода, мы передаем параметры в layout, в данном случае имя пользователя: После того как был вызван метод send и письмо было отправлено, нам необходимо очистить параметры, которые мы передавали в layout, делается это в этом участке кода: Как было описано выше, мы хотим что бы пользователю отправлялись две версии письма: Для этого в методе compose нам необходимо указать два вида шаблона view , один для HTML версии письма, второй для текстовой: Удобство такого подхода в том, что нам не нужно передавать имя и e-mail адрес получателя вручную, так как эти данные итак будут доступны в модели пользователя, в которой у нас находиться метод отправки письма sendMail.

Теперь рассмотрим параметры, которые необходимо передавать в метод sendMail. Второй параметр - Пример письма - это тема письма. На этом реализация экшена actionTestMailer закончена, пора открыть его в браузере и проверить как будет выглядеть отправленное письмо. Теперь проверим в каком виде пришло письмо. Письмо должно выглядеть примерно так: Как видно в результате в письмо подставились все те параметры, которые мы передавали, также был применен макет layout.

В качестве почтового ящика, с которого будут отправляться письма, будет использован обычный почтовый ящик зарегистрированный на mail. Какие изменения были сделаны:

Yii2 как сделать рассылку email ? — zennoposter.club

- Он положил руку ей на плечо.  - Я никогда не послал бы туда Дэвида, если бы считал, что это связано хоть с малейшей опасностью.  - Он улыбнулся.  - Поверь. При первых же признаках опасности я отправлю к нему профессионалов.

Я вновь приветствую вас на своем блоге и сегодня попробую ответить на вопрос, как стать веб-программистом с нуля максимально быстро?

Предыдущая статья: бот php вконтакте

Следующая статья: работа email рассылка