ironbound/wp-notifications

Drop in framework for sending notifications in WordPress.

v1.0.1 2015-10-05 05:58 UTC

This package is auto-updated.

Last update: 2024-11-08 05:14:27 UTC


README

WP Notifications is a drop in framework for sending notifications with WordPress. It supports multiple sending strategies and batch processing via queues.

Basic Usage

WP Notifications is easy, and straightforward to use.

Sending a single notification

$recipient = wp_get_current_user();
$manager = Factory::make( 'your-notification' );
$message = "Hey {first_name}, how's it going?";
$subject = "Hey!"

$notification = new Notification( $recipient, $manager, $message, $subject );
$notification->set_strategy( new WP_Mail() )->send();

Sending multiple notifications

$queue = new WP_Cron( new Options_Storage( 'your-project-name' ) );
$queue->process( $notifications, new WP_Mail() );

Setting up template tag listeners

add_action( 'ibd_wp_notifications_template_manager_your-notification', function( Manager $manager ) {
    // a template tag of {first_name} will be automatically replaced 
    // with the recipient's first name when sending.
    $manager->add_listener( new Listener( 'first_name', function( WP_User $recipient ) {
        return $recipient->first_name;
    } ) );
} );

Supports

Strategies

  • WP_Mail
  • iThemes Exchange
  • Easy Digital Downloads
  • Mandrill

Queues

  • WP_Cron
  • Mandrill

Installation

First, add WP Notifications as a dependency with Composer:

composer require ironbound/wp-notifications

Then, make sure your bootstrap file is loading the composer autoloader:

require_once 'vendor/autoload.php';

License

MIT