Coder Social home page Coder Social logo

hypemailchimpbundle's Introduction

Hype MailchimpBundle for API V2.0

Symfony2.x bundle for MailChimp API V2 and Export API API V1 Wrapper bundle that makes accessing Mailchimp functions easily in object oriented using method chaining

License

HypeMailChimp bundle released under MIT LICENSE

#Supported API Methods

Campaigns related

  1. campaigns/create
  2. campaigns/content
  3. campaigns/list
  4. campaigns/delete
  5. campaigns/pause
  6. campaigns/ready
  7. campaigns/replicate
  8. campaigns/ready
  9. campaigns/resume
  10. campaigns/send
  11. campaigns/send-test
  12. campaigns/segment-test
  13. campaigns/schedule
  14. campaigns/schedule-batch
  15. campaigns/unschedule
  16. campaigns/update

Lists related

  1. lists/list
  2. lists/abuse-reports
  3. lists/activity
  4. lists/subscribe
  5. lists/unsubscribe
  6. lists/member-info
  7. lists/interest-groupings
  8. lists/interest-grouping-add
  9. lists/interest-grouping-del
  10. lists/interest-grouping-update
  11. lists/interest-group-add
  12. lists/interest-group-update
  13. lists/interest-group-del
  14. lists/segments
  15. lists/segment-test

Templates related

  1. templates/add
  2. templates/list
  3. templates/del
  4. templates/info
  5. templates/undel

Export API

  1. list
  2. campaignSubscriberActivity

Helper related

  1. helper/ping
  2. helper/generate-text

Need support for a method not on the list submit an issue

Setup

Step 1: Download HypeMailchimp using composer

Add HypeMailchimp in your composer.json:

{
    "require": {
        "ahmedsamy/hype-mailchimp-bundle": "dev-master"
    }
}

Now tell composer to download the bundle by running the command:

$ php composer.phar update "ahmedsamy/hype-mailchimp-bundle"

Composer will install the bundle to your project's vendor/ahmedsamy/hype directory.

Step 2: Enable the bundle

Enable the bundle in the kernel:

<?php
// app/AppKernel.php

public function registerBundles()
{
    $bundles = array(
        // ...
        new Hype\MailchimpBundle\HypeMailchimpBundle(),
    );
}

Step 3: Add configuration

# app/config/config.yml
hype_mailchimp:
    api_key: xxxxxxx-us5
    default_list: xxxxxxxx
    ssl: true #optional configuring curl connection

Usage

Using service

<?php
        $mailchimp = $this->get('hype_mailchimp');
?>

##Examples

###Create new campaign

<?php 
    $mc = $this->get('hype_mailchimp');
        $data = $mc->getCampaign()->create('regular', array(
            'list_id' => '93419bbdc0',
            'subject' => 'test created subject',
            'from_email' => '[email protected]',
            'from_name' => 'Ahmed Samy',
            'to_name' => 'fans'
                ), array(
            'html' => '<h5>Html content</h5>',
            'sections' => array(),
            'text' => 'test',
            'url' => 'http://www.example.com',
            'archive' => 'test'
        ));
        var_dump($data);
?>

###Delete existing campaign

<?php 
     $mc = $this->get('hype_mailchimp');
     $data = $mc->getCampaign()
                ->setCi('1088b4ed65')
                ->del();

        var_dump($data);
?>

###Send campaign

<?php 
     $mc = $this->get('hype_mailchimp');
     $data = $mc->getCampaign()
                ->setCi('1088b4ed65')
                ->send();

        var_dump($data);
?>

###Subscribe new user to list

<?php 
     $mc = $this->get('hype_mailchimp');
     $data = $mc->getList()
                ->subscribe('[email protected]');
        var_dump($data);
?>

Note that the user will be subscriber to the default list set in config.yml if you want to change the list for this time only, you can use

<?php 
     $mc = $this->get('hype_mailchimp');
     $data = $mc->getList()
                ->setListId('xxxxxxx')
                ->addMerge_vars(
                        array(
                            'mc_notes' => 'test notes'
                ))
                ->subscribe('[email protected]');
?>

hypemailchimpbundle's People

Contributors

ahmedsamy avatar mhouchin avatar gabriperego avatar nyrodev avatar phobetor avatar voslartomas avatar izotopsvk avatar mbellotti avatar

Watchers

James Cloos avatar Ahmed Habashy avatar Ahmed Samir 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.