aaron4m / zf2-mailchimp
A Mailchimp 1.3 API module for Zend Framework 2.0
dev-master
2013-09-26 23:16 UTC
Requires
- php: >=5.3.3
This package is not auto-updated.
Last update: 2024-12-21 14:53:18 UTC
README
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
- Add the following requirement to your projects composer.json file.
"aaron4m/zf2-mailchimp": "dev-master"
- Open up your command line and run
php ./composer.phar update
- Copy vendor/aaron4m/zf2-mailchimp/config/mailchimp.local.php.dist to your /config/autoload folder and rename it to mailchimp.local.php
- 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();