hugofirth/mailchimp

Wrapper on the Mailchimp class provided by Mailchimp - with support for Laravel 4. v2.0.0 supports Mailchimp API verion 2.0

Installs: 33 233

Dependents: 0

Stars: 92

Watchers: 7

Forks: 28

Open Issues: 15

Language: PHP

v2.0.3 2013-11-26 10:36 UTC

README

The package supports use with the Laravel framework (v4) providing a MailchimpWrapper facade.

Setup:

In order to install add the following to your composer.json file within the require block:

"require": {
    …
    "hugofirth/mailchimp": "2.0.*",
    …
}

Within Laravel, locate the file ..app/config/app.php *.

Add the following to the providers array:

'providers' => array(
    …
    'Hugofirth\Mailchimp\MailchimpServiceProvider',
    …
),

Furthermore, add the following the the aliases array:

'aliases' => array(
    …
    'MailchimpWrapper'       => 'Hugofirth\Mailchimp\Facades\MailchimpWrapper',
    …
),

Publish the configuration

$ php artisan config:publish hugofirth/mailchimp

Lastly, run the command composer update.

* The subsequent steps should be repeated for any file app.php created for additional environments.

Usage:

Your unique MailChimp API key should be set in the package's config found in app/config/packages/hugofirth/mailchimp/config.php

Methods of the MailChimp api class work as described by the MailChimp API docs found Here. Examples of actual usage can be found Here (Warning: Examples use CakePHP). Thanks to Laravel's use of the "Facade" design pattern, all methods may be called in the following manner:

…
//Retrieve an array of lists for your account
$lists = MailchimpWrapper::lists()->getList()['data'];
…
//Subscribe a user, with email: $email_address, to a list with id: $list_id
MailchimpWrapper::lists()->subscribe($list_id, array('email'=>$email_address));

In order to allow for auto-completion, you can include a use statement for the Facade:

<?php

use Hugofirth\Mailchimp\Facades\MailchimpWrapper;

class SomeClass
{
    public function someMethod()
    {
        MailchimpWrapper:: //You should be able to get auto completion here for the API methods/properties
    }
}

Enjoy!