Использование Sendgrid в Yii2

Sendgrid — очень удобный сервис по отправке транзакционных писем с обширной аналитикой и отчетами по доставленным письмам. Сервис также очень удобен для обхода спам фильтров ваших писем, используя Sendgrid вы можете быть уверены что письмо будет доставлено и прочитано адресатом.

Хотя API очень прост и удобен, мы все же воспользуемся готовым расширением wadeshuler/yii2-sendgrid

Шаг 1. Установим расширение в свой проект

composer require wadeshuler/yii2-sendgrid

Шаг 2. Пропишем наше расширение в конфигурации mailer:

'mailer' => [
    'class' => 'wadeshuler\sendgrid\Mailer',
    'useFileTransport' => false,
    'apiKey' => 'Ключ Sendgrid API нужно получить на sendgrid.com',
],

Шаг 3. Попробуем отправить письмо:

$message = Yii::$app->mailer->compose()
    ->setTo(["[email protected]"])
    ->setFrom(['[email protected]' => 'My service notifications'])
    ->setSubject('Welcome to our fancy service')
    ->setHtmlBody('Some html messsage here')
    ->setTextBody('Some text messsage here')
    ->send();

Для проверки статуса письма достаточно проверить переменную $message на True.

Кроме настроек выше вы также можете добавлять дополнительные параметы в ваши письма такие как template id, headers и многое другое.

Статистику по отправленным и прочитанным письмам вы можете наблюдать в личном кабинете sendgrid. Хоть сервис и является платным вы можете отправлять до ста писем в сутки на бесплатном аккаунте.

 

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *