Skip to content

redking/sendgrid-webapi-cakephp-plugin

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 
 
 

Repository files navigation

CakePHP plugin for SendGrid WebAPI

Usage

This plugin uses CakeEmail class, and works almost the same.

Basic example:

App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail('sendGrid');

$email->to('recipient@domain.com');
$email->subject('Test email via SendGrid');
$email->send('Message');

More advanced example:

App::uses('CakeEmail', 'Network/Email');
$email = new CakeEmail('sendGrid');

$email->template('default', 'default');
$email->emailFormat('html');
$email->viewVars(array('name' => 'Your Name'));
$email->to(array('recipient1@domain.com' => 'Recipient1', 'recipient2@domain.com' => 'Recipient2'));
$email->subject('Test email via SendGrid');
$email->addHeaders(array('X-Tag' => 'my tag'));
$email->attachments(array(
    'cake.icon.png' => array(
        'file' => WWW_ROOT . 'img' . DS . 'cake.icon.png'
	)
));

$email->send();

The syntax of all parameters is the same as the default CakeEmail class:

Installation

You can clone the plugin into your project:

cd path/to/app/Plugin
git clone git@github.com:a2design-company/sendgrid-webapi-cakephp-plugin.git Sendgrid

Bootstrap the plugin in app/Config/bootstrap.php:

CakePlugin::load('Sendgrid');

Configuration

Create the file app/Config/email.php with the class EmailConfig.

<?php
class EmailConfig {
	public $sendGrid = array(
            'transport' => 'Sendgrid.Sendgrid',
            'from' => 'you-email@sendgrid.com',
            'fromName' => 'You name',
            'timeout' => 30,
            'username' => 'username@sendgrid.com', //SendGrid username
            'password' => 'password', //SendGrid password
            'client' => null,
            'log' => false,
            'emailFormat' => 'both',
            'category' => 'transaction', //default SendGrid category for emails
            'count' => 200, //count of email to send in one API call, max 500, default 500
        );
}

Requirements

CakePHP 2.0+

License

Licensed under The MIT License

Developed by A2 Design Inc.

About

CakePHP plugin for sending emails via SendGrid WebAPI

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • PHP 100.0%