This package provides a simple way to send rich emails using Twig templates. A small wrapper around wp_mail()
;
Once installed, register the Service Provider in config/app.php
:
'providers' => [
...
Rareloop\Lumberjack\Email\EmailServiceProvider::class,
...
],
You then have access to the Rareloop\Lumberjack\Email\Facades\Email
facade and can create emails:
use Rareloop\Lumberjack\Email\Facades\Email;
Email::sendHTML(
'recipient@mail.com',
'Email Subject line',
'<p>Email body goes here</p>'
);
// Or with a reply-to email
Email::sendHTML(
'recipient@mail.com',
'Email Subject line',
'<p>Email body goes here</p>',
'reply-to@mail.com'
);
The twig file will be compiled using Timber before sending.
use Rareloop\Lumberjack\Email\Facades\Email;
Email::sendHTMLFromTemplate(
'recipient@mail.com',
'Email Subject line',
'email.twig',
[ 'name' => 'Jane Doe' ] // Twig context
);
use Rareloop\Lumberjack\Email\Facades\Email;
Email::sendPlain(
'recipient@mail.com',
'Email Subject line',
'Plain text body',
);
Each send method accepts an optional attachments
parameter which will be passed on to wp_mail
as it is received.
use Rareloop\Lumberjack\Email\Facades\Email;
Email::sendPlain(
'recipient@mail.com',
'Email Subject line',
'Plain text body',
false, // Set reply-to to false if you don't need it, necessary because attachments is the final argument
['/path/to/file.pdf']
);
You can also specify an SMTP server to use for emails by creating a config/email.php
file:
return [
'smtp' => [
'hostname' => '',
'username' => '',
'password' => '',
'auth' => true|false,
'port' => '',
],
];