fabian/mandrill

Mandrill API library with Message class implementation like in Nette framework

v2.0.1 2018-06-07 22:19 UTC

This package is not auto-updated.

Last update: 2024-12-30 08:25:30 UTC


README

Mandrill API library with Message class implementation like in Nette framework.

Requirements

Installation

The best way to install is using Composer:

$ composer require fabian/mandrill

If you'r using older Nette with Nette\Mail version <=2.3.0, you have to use mandrill-nette version 1.1.0:

$ composer require fabian/mandrill:1.1.0

Usage

Add Mandrill API key to your parameters in your config.neon:

parameters:
  mandrill:
    apiKey: yourApiKey

Then you can use MandrillMailer:

$mail = new \Fabian\Mandrill\Message();
$mail->addTo('joe@example.com', 'John Doe')
   ->setSubject('First email')
   ->setBody("Hi,\n\nthis is first email using Mandrill.")
   ->setFrom('noreplay@yourdomain.com', 'Your Name')
   ->addTag('test-emails');
$mailer = new \Fabian\Mandrill\MandrillMailer(
    $this->context->parameters['mandrill']['apiKey']
);
$mailer->send($mail);

You can use \Nette\Mail\Message too:

$mail = new \Nette\Mail\Message;
$mail->addTo('joe@example.com', 'John Doe')
   ->setSubject('First email')
   ->setBody("Hi,\n\nthis is first email using Mandrill.")
   ->setFrom('noreplay@yourdomain.com', 'Your Name')
$mailer = new \Fabian\Mandrill\MandrillMailer(
    $this->context->parameters['mandrill']['apiKey']
);
$mailer->send($mail);

Mandrill templates

If you'r using templates, you can send email using sendTemplate() instead of send():

$mailer->sendTemplate($mail, 'template_name', array(
    array('name' => 'header', 'content' => 'testing header'),
));