gringlas / cakephp-mailjet-transport
MailJet Mailer transporter for cakePHP3.
Installs: 511
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:cakephp-plugin
Requires
- php: >=5.6
- mailjet/mailjet-apiv3-php: ^1.4
Requires (Dev)
- cakephp/cakephp: ^3.5
- phpunit/phpunit: ^5.7|^6.0
This package is auto-updated.
Last update: 2025-03-17 16:39:06 UTC
README
This plugin provides a simple MailJet Transport for use with cakePHP 3.
How To Use
It is recommended to use cakePHPs Mailer classes.
At first add the MailJetTransport to your app.php
'EmailTransport' => [
'default' => [
'className' => 'gringlas\MailJetTransport\Mailer\MailJetTransport',
]
],
Also add your credentials to your app.php
/**
* MailJet credentials
*
* - key - MailJet Api key
* - 'secret' - MailJet Api secret
* - mailJetKeyInTemplateVars - if set to true templateVars from MailJet key will be taken and sent to MailJet,
* otherwise send complete templateVars
*
*/
'MailJet' => [
'key' => '1231sdasd',
'secret' => 'asdasd123123',
'mailJetKeyInTemplateVars' => false
],
To log responses from mailJet api please add logger to app.php
/**
* logging mailJet messages
*/
'mailJet' => [
'className' => 'Cake\Log\Engine\FileLog',
'path' => LOGS,
'file' => 'mailJet',
'url' => env('LOG_JETQUERIES_URL', null),
'scopes' => ['mailJet']
],
In your email profiles use TemplateID
for the MailJet transactional template.
If you using Email
in app.php
:
'Email' => [
'passwordreset' => [
'TemplateID' => 1234,
'subject' => 'Password Reset'
]
]
You can also add the TemplateID
directly in a Mailer by calling setProfile()
.
If mailJetKeyInTemplateVars
is set, provode template vars with setViewVars()
in MailJet
key, otherwise simply all vars will be sent to MailJet:
public function passwordreset() {
return $this
->setProfile([
'TemplateID' => 1234
])
->setViewVars([
'newPassword' => 'a192ja',
'MailJet' => [
'newPassword' => 'a192ja'
]
])
->setSubject('Password reset');
}
Only TemplateVariables are getting sent to MailJet API. Subject, from, ... are all have to get configured in MailJet Templates. So you can easily switch back to cakePHPs default MailTransport
.