Skip to content

tdutrion/zf2-mailchimp

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ZF2 Mailchimp 1.3 API Wrapper

This module is an attempt to create a complete mailchimp API wrapper for Zend Framework 2.0 At the moment, this is loosely based on https://github.com/waynhall/CodeIgniter-Library-for-MailChimp-API-v1.3

*This is very much a work in progress and functionality will be added as I have time and/or need.

Updates

12/04/2013 - Major overhaul of service/mapper architecture. 14/04/2013 - Rewrote the submit mechanism and cleaned up subscriber service.

Contributing

If you want to see this module move along faster, please feel free to pick a section, start coding and submit pull requests! I'm interested in contributions for

  • Unit Tests
  • Add other sections not yet completed
  • Code improvements (I'm still learning, so would appreciate feedback)

Installation

  1. Add the following requirement to your projects composer.json file.
"aaron4m/zf2-mailchimp": "dev-master"
  1. Open up your command line and run
php ./composer.phar update
  1. Copy vendor/aaron4m/zf2-mailchimp/config/mailchimp.local.php.dist to your /config/autoload folder and rename it to mailchimp.local.php
  2. You must add your API key to this file and configure any global settings.

Usage Examples

Subscribe (Single)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$mailchimp->email('me@here.com.au')
  ->listId('29bc73c393')
  ->emailType('html')
  ->subscribe();

Subscribe (Bulk)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$mailchimp->listId('12345')
  ->batch(array(
    array('EMAIL'=>'me@here.com', 'EMAIL_TYPE'=>'html', 'FNAME'=>'Aaron'),
    array('EMAIL'=>'me2@here.com', 'EMAIL_TYPE'=>'html', 'FNAME'=>'Bill'),
  ))
  ->subscribe();

Unsubscribe (Single)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$mailchimp->email('me@here.com.au')
    ->listId('29bc73c393')
    ->unsubscribe();

Unsubscribe (Bulk)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$subscribe->listId('29bc73c393')
  ->batch(array('me@here.com', 'me2@here.com'))
  ->unsubscribe();

Update (Single)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$mailchimp->listId('12345')
  ->email('me@here.com')
  ->mergeVars(array(
    array('FNAME'=>'Aaron'),
  ))
  ->update();

Update (Bulk)

$mailchimp = $this->getServiceLocator()->get('subscriber');

$mailchimp->listId('12345')
  ->batch(array(
    array('EMAIL'=>'me@here.com', 'FNAME'=>'Aaron'),
    array('EMAIL'=>'me2@here.com', 'FNAME'=>'Billy'),
  ))
  ->update();

Get Member Info (Single)

  • You can return this as an array or a subscriber entity
$mailchimp = $this->getServiceLocator()->get('subscriber');

$subscriberDetails = $mailchimp->email('aaron@4mation.com.au')
  ->listId('29bc73c393')
  ->get();

About

A Mailchimp 1.3 API module for Zend Framework 2.0

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • PHP 100.0%