I've tried using views, but when I choose the rendered entity display of the MailChimp campaign field, the result is empty even though I've created 3 campaigns from within my Drupal site. I don't think views is the answer anyhow as creating a campaign from a Drupal site still requires logging in to MailChimp to send. So I need to be able to display newsletters created in MailChimp.

I've resorted to displaying the archive of the latest newsletter in an iframe. Besides being unattractive, it requires my client perform extra steps which is counterproductive. Not to mention, it is not responsive.


Outside of linking or iframe embedding, there isn't a way of simply displaying the content as, say, a Drupal page. There is actually a reason for this.

First, the content of the email is already an entire webpage: it (should) have an <html> tag and it will likely have <head>, <style>, and <body> sections. So it actually makes plenty of sense to just include it as an iframe directly on a page since it will need it's own space to format the content properly.

But let's say you decide to use the /campaigns/content.format API call to grab the actual content of the campaign. You'd likely still need to strip away the CSS and other HTML from within the content to make it display within your page nicely.

And with regards to synchronization, it only syncs from Drupal to Mailchimp. You'd need some other way of grabbing those campaigns if you wanted to see them in Drupal. This is especially useful because Mailchimp is used by many who have a single account + multiple clients.


I use Kompozer to edit my site, it's WYSIWYG software and easy to use. Just open the Mailchimp campaign URL in Kompozer and copy and paste what you need from there into your page. You may have to tweak it a little but it works for me :-)

Look here www.brycebrownart.com/arts-news

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.