Skip to content
This repository has been archived by the owner on Feb 16, 2020. It is now read-only.

sbeam/spree-mail-chimp

Repository files navigation

Spree + Mail Chimp

MailChimp API integration for your Spree store, using the hominid gem.

Adds a checkbox to the user signup form to allow customer to opt-in to your Mailchimp mailing list. Mailchimp API calls happen via the hominid gem.

Mailchimp subscription status is tracked with a boolean flag on the users table, we also fetch and store the unique MC record id when the subscription is created. This allows us to modify existing email addresses with minimal fuss.

This is a very simple extension as of now, any ideas suggestions or improvements welcome!

Subscription form partial with JS

Also includes a partial at shared/newsletter_subscribe_form that can be included in your footer or sidebar anywhere on the site, has one field for the email address. jQuery code in public/javascripts/mailchimp_subscribe.js will POST to the SubscriptionsController which will relay to Mailchimp.

The SimpleModal plugin is used in the EJB to pop up a confirmation or error alert (because you won’t be satisfied with a simple alert() box)

Installation

Add to project’s Gemfile:


gem 'spree_mail_chimp'
 

Run from project’s root:


bundle install

rails g spree_mail_chimp:install

Configuration

See the Mail Chimp Settings forms in the Admin under Configuration.

Note, using Mail Chimp “Merge Vars”, you can have any callable methods on User sent
to the MC list, mapped to indentically named (but uppercased) fields in the MC list admin console.
Unfortunately these are only sent at the time the subscription is created, so there isn’t much available.

As well you need the fields again lowercased with _changed? functions if you want them to update in mailchimp when you update them.

Changes

Version 3.0.0 – released 19 Apr 2012 – Spree 1.0 compat
Version 2.0.0 – released 6 Dec 2010 – Spree 0.30-stable
Version 1.0.1 – released 21 Nov 2010 – Spree 0.11-stable

Requirements

Spree >= 1.0
hominid >= 2.2.0 http://rubygems.org/gems/hominid

Also uses the jQuery SimpleModal plugin, included.

Credits

Authored by Sam Beam @sbeam
Migrated to Spree 0.30 by Bastian Schnurle @bzt
Migrated to Spree 1.0 (and extensively refactored) by James Kong @jkongie

Inspired originally by https://github.com/softa/mailee_spree

includes SimpleModal http://www.ericmmartin.com/projects/simplemodal/

TODO

  • make subscribe_to_newsletter_field work
  • Send user address info to MC via merge vars, when address is given
  • Export new orders to Mailchimp for full CRM gnarliness
  • Utility to export existing users to Mailchimp
  • Add admin controller to view lists and subscriptions
  • Allow for multiple lists
  • Tests :/

About

Mail Chimp integration for your Spree store

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published