Symfony 2/3 bundle for SendGrid. Utilizes the SendGrid PHP Library https://github.com/sendgrid/sendgrid-php to make it compatiable with SwiftMailer.
composer require expertcoder/swiftmailer-send-grid-bundle
or
composer.json
"require": {
...
"expertcoder/swiftmailer-send-grid-bundle": "~1.0"
}
AppKernel.php
$bundles = [
// ...
new ExpertCoder\Swiftmailer\SendGridBundle\ExpertCoderSwiftmailerSendGridBundle(),
];
parameters.yml.dist
parameters:
sendgrid_api_key: PleaseEnterSendGridApiKey
config.yml
swiftmailer:
transport: expertcoder_swift_mailer.send_grid.transport
expert_coder_swiftmailer_send_grid:
api_key: %sendgrid_api_key%
categories: [my_category] # optional, will be added to all mails sent
Since Symfony 3.2, you must name the custom transport service swiftmailer.mailer.transport.< name >
services.yml
services:
swiftmailer.mailer.transport.expertcoder_swift_mailer.send_grid.transport:
alias: expertcoder_swift_mailer.send_grid.transport
config.yml
imports:
- { resource: services.yml }
Following RFC 1341, section 7.2, if either text/html
or text/plain
are to be sent in your email: text/plain
needs to be first, followed by text/html
, followed by any other content.
For more informations, please see SwiftMailer and RFC 1341