Giter Site home page Giter Site logo

monzinsof / cakephp-email-queue Goto Github PK

View Code? Open in Web Editor NEW

This project forked from geneosoftware/cakephp-email-queue

0.0 1.0 0.0 244 KB

Email Queue plugin for CakePHP with Sender command to batch deliver emails using a cron job or offline worker

PHP 100.00%

cakephp-email-queue's Introduction

CakePHP Email Queue plugin

This plugin provides an interface for creating emails on the fly and store them in a queue to be processed later by an offline worker using a cakephp shell command.

Requirements

  • CakePHP 2.x

Installation

There are a few ways you can choose for intalling this plugin:

[Manual]

[GIT Submodule]

In your app directory type:

git submodule add [email protected]:nodesagency/cakephp-email-queue.git app/Plugin/EmailQueue
git submodule init
git submodule update

[GIT Clone]

In your plugin directory type

git clone git://github.com/nodesagency/cakephp-email-queue.git app/Plugin/EmailQueue

Enable plugin

In 2.0 you need to enable the plugin your app/Config/bootstrap.php file:

CakePlugin::load('EmailQueue');

If you are already using CakePlugin::loadAll();, then this is not necessary.

Load required database table

In order to use this plugin, you need to create a database table. Required SQL is located at

# Config/Schema/email_queue.sql

Just load it into your database.

Usage

Whenever you need to send an email, use the EmailQueue model to create and queue a new one by storing the correct data:

ClassRegistry::init('EmailQueue.EmailQueue')->enqueue($to, $data, $options);

enqueue method receives 3 arguments:

  • First argument is a string or array of email addresses that will be treated as recipients.
  • Second arguments is an array of view variables to be passed to the email template
  • Third arguments is an array of options, possible options are
  • subject : Email's subject
  • send_at : date time sting representing the time this email should be sent at (in UTC)
  • template : the name of the element to use as template for the email message
  • layout : the name of the layout to be used to wrap email message
  • format : Type of template to use (html, text or both)
  • config : the name of the email config to be used for sending

Sending emails

Emails should be sent using bundled Sender command, use -h modifier to read available options

# Console/cake EmailQueue.Sender -h

You can configure this command to be run under a cron or any other tool you wish to use.

cakephp-email-queue's People

Contributors

jippi avatar lorenzo avatar ad7six avatar ankr avatar angelxmoreno avatar henrikjuul avatar

Watchers

Moncif AIDI avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.