single post - articles

MailChimp + WordPress = perfect e-news

Using MailChimp and WordPress together to publish your newsletter

MailChimp and WordPress

First off, I’ll just say that today list management goes hand-in-hand with sending newsletters. If you’re a busy person, you don’t need to be managing a mailing list in one place and sending newsletters from another.  I’ve spent much time recently migrating lists from email address books and contact management programs to online emailing services, so this article is written from that perspective and after much experimenting and experience with a number of the most popular email marketing services, I’ve decided to stick with MailChimp for the time being, since they currently offer the most options for the least money (not to mention great customer service).

E-news scenario

A typical fan/member mailing and list management scenario :

  • visitors sign up for your mailing list directly on your website
  • they are welcomed with a confirmation email (an “opt in”) and can subscribe/unsubscribe themselves at any time
  • you visit the online service to send a newsletter, manage your mailing list and view the statistics on your mailings

While many sites (Bandwagon, ReverbNation, SonicBids, Marcato) offer some flavor of these functions, along with a slew of other artist services, I personally prefer a service that specializes in email marketing as the former tend to have limited, often quite generic options; I’m a fan of using the most customizable tools possible, which usually means a tool that is dedicated to a particular function. As a developer of websites my approach is all about my clients having as much ease-of-use and control as possible over their own content and the functionality of their site (most of the client sites I create are for musicians or cultural organizations). I also don’t want to spend my time supporting (sometimes) hard-to-understand tools at these various services when it is so easy for them to create their newsletter just like they create a Post or Page in WordPress.

So why can’t I just send from my own email program?

In an nutshell : because of spam. The bad guys have forced the server who hosts your email to add aggressive filters to prevent you from being overwhelmed with offers for questionable products. If you send a mailing from any email program to a large list, you risk being identified as a spammer. And if your email address reply-to contains your domain name (i.e., your domain could be blocked, meaning that emails from that domain would not be accepted, period! If a lot of your fans have common email domain addresses like, this could mean that nobody at that domain would receive your email and you’d be in the difficult position of trying to get un-blacklisted by those servers.

A mailing service essentially “authenticates” your message; proof of your identity is furnished via the message’s “header” (details about where it is coming from) as well as using other techniques like “keys” (unique identifiers that can’t easily be spoofed by a spammer). To comply with current laws, a good newsletter also contains a snail-mail address, an unsubscribe link and information about how the recipient got on the list.

If you really want to know more, you can read about CAN-SPAM email regulations here :

Mailing service features

Most of the popular emailing services offer :

  • a limited number of free subscribers to your list (varies widely)
  • choice of free or custom templates
  • HTML and text-only versions of the mailing
  • signup form code you can embed in your website
  • analytics detailing new subscribers, unsubscribes, clicks on links in your email
  • detailed list management (add, remove subscribers manually or via file import)
  • ability to create custom fields and segment lists (options, “how you found us”, etc.)

Some services additionally offer :

  • ability to import a newsletter from a URL (template on your website)
  • rss-to-email (people sign up for your RSS feed which is delivered as email)
  • social network integration (simultaneous send to Facebook, Twitter, etc.)
  • identification of subscribers’ social network affiliations
  • scheduled sends
  • API (application programming interface), special code or “hooks” that can be used to display or interact with your account and its data

Doing it my way

My approach to e-news is to use a page in the website (for my clients, usually WordPress, but any site offering backend access to code will work). The page uses a specially designed “template” (HTML coded layout) that is optimized for display in common email programs (width, fonts, etc.). The sender adds a message and any photos to the page and then pastes the URL (web address) of that page into MailChimp, who imports (amazingly!) everything on that page and voilà, a ready-to-send-out newsletter!

One of the coolest things about doing it this way is that the custom template can also include basically anything that your WordPress site can generate, like recent posts, gigs and other site content. Sometimes we even create two different “newsletter” templates : a more complex one for monthly mailings and a smaller, simpler one for newsflashes. Just give each template a different name (Newsletter, Flash) and select the appropriate model from the Page Attributes dropdown list of custom templates. If you need to keep an archive of your newsletters (which won’t happen if you re-use the same page all the time), you’ll need to create a “newsletter” category and write a new post (instead of a Page) every time you do a mailing; then your template will be a single Post template rather than a page template (ex. single-newsletter.php).

You can make sure your newsletter uses that template by creating a custom single.php that looks something like this :

$post = $wp_query->post;
if ( in_category('newsletter') ) {
include(TEMPLATEPATH . '/single-newsletter.php');
} else {
include(TEMPLATEPATH . '/single-default.php');

In addition to these types of newsletters, MailChimp lets you import content from a custom RSS (XML) template just like the aforementioned Page or Post templates. The “feed” will automatically be sent out as email (RSS-to-email) on a scheduled basis – people receiving it won’t even know that they’re actually reading an RSS feed. This is an especially nice feature for those who post often and thus have a steady stream of content to share. One of my clients, a not-for-profit, sends their montly newsletter out this way; it is configured to grab the latest five posts from the site and send them on the first of the month. Talk about streamlined! No more cutting and pasting and duplicating existing content… It’s not too hard to create an XML template – copy the default WordPress rss.php template into your theme, mess around with it and do some tests. The only caveat is that if your content doesn’t change between tests, you can run into some confusing caching issues on MailChimp. I had to do a bit of hit-or-miss sending to perfect this, including changing publish dates in WordPress and making some tiny edits to get it all right before activating the schedule but all went smoothly after that. Stand by for a more detailed post on creating custom RSS templates and in the meantime, see XML/RSS resources below for more info on this.

Of all the services I’ve used, I love MailChimp best and their price, analytics and social network features can’t be beat. A close second is Campaign Monitor, who are actually in a way responsible for my “inventing” the MailChimp/WordPress system… because Campaign Monitor also lets you paste in a web URL (i.e. the newsletter page in WordPress) and then magically brings all the CSS inline (into the template) even if you are using an external stylesheet, which MailChimp does not currently do (although they say they are looking into it). I also use Campaign Monitor regularly for certain clients who also use more traditional email templates (that live on the Campaign Monitor site) as I like their simple, clean and easy-to-understand interface a lot.

Visit a sample newsletter here to see what it looks like on the web. You can view, copy and paste the source code if you want to try it out yourself. Note that the MailChimp “unsubscribe” and other proprietary tags aren’t filled in with the recipient’s email address, etc. until they are viewing the newsletter in their own email inbox.


  • (Vizou sample newsletter template)
  • (another sample newsletter)
  • (formerly Groupie Corral)

An abridged version of this article was  published in the 2011-12 winter edition of Local 1000 (American Federation of Musicians folk branch) newsletter “New Deal”.