Skip to main content

MailChimp integration for Plone.

Project description

https://secure.travis-ci.org/collective/collective.mailchimp.png https://img.shields.io/coveralls/collective/collective.mailchimp/master.svg Code Health Egg Status Latest Version License

Introduction

kitconcept

MailChimp integration for Plone 4 and 5.

MailChimp helps you design email newsletters, share them on social networks, integrate with services you already use, and track your results.

collective.mailchimp provides a @newsletter view to let visitors subscribe to one or more MailChimp mailing lists. It also provides a MailChimp portlet in case you want to display your newsletter subscription as part of an existing site.

The newsletter subscriptions forms in both the view and the portlet are extendable, so you can add custom fields that can be stored in your MailChimp subscriber list.

It also comes with a MailChimp control panel to let you enter your MailChimp credentials for your Plone site.

collective.mailchimp is tested on Plone 4.x and 5.x and should work on Plone > 3.3 (with the appropriate version pins for plone.app.registry and z3c.form).

Installation

Install collective.mailchimp by adding it to your buildout:

[buildout]

...

eggs =
    collective.mailchimp

and then running “bin/buildout”.

Multiple MailChimp Lists

collective.mailchimp supports multiple MailChimp lists. The MailChimp portlet allows administators to choose a MailChimp list from a dropdown list for each portlet. The MailChimp newsletter view (@@newsletter) allows to provide a list_id (see your MailChimp account) as optional URL parameter:

http://localhost:8080/Plone/@@newsletter?list_id=f3247645gs

If no URL parameter is provided the form just chooses the first MailChimp list available (which is fine as long as you have just one list anyway).

Preselect Interest Groups

collective.mailchimp supports MailChimp’s interest groups. In case there is more than one single group you might want to pre-select some of the groups. To do so add one or more ‘preselect_group’ parameters to the URL that points to your MailChimp newsletter form. For instance to select the first and the fifth group entry use the following link:

http://localhost:8080/Plone/@@newsletter?preselect_group=0&preselect_group=4

Note: if you used version 1.4.1 of collective.mailchimp or earlier, you may no longer see the interest groups on the subscribe form. You should visit the control panel again. This will update the data automatically.

Extend Newsletter Subscription Form

The collective.mailchimp newsletter form (used in the separate view as well as in the portlet) can be extended without touching the code of collective.mailchimp.

History

collective.mailchimp has been written from the scratch in order to replace raptus.mailchimp for newer versions of Plone (> 4.0).

The difference between collective.mailchimp and raptus.mailchimp is:

  • Directly use the MailChimp API instead of greatape as Python wrapper (because greatape is completely untested, does not support the latest MailChimp API version and seems to be not actively developed any longer)

  • z3c.form instead of formlib for forms (because formlib is deprecated)

  • plone.app.registry instead of portal_properties for storing properties (because portal_properties will be deprecated soon)

  • it is tested by automated software tests (because untested code is broken code)

Issue Tracker

Please report bugs to the issue tracker on github.

Credits

kitconcept

This plugin is developed and maintained by kitconcept.

If you are having issues, please let us know.

License

The project is licensed under the GPLv2.

Contributors

  • Timo Stollenwerk, Original Author

  • Maurits van Rees, MailChimp API 3, Plone 5 compatibility

  • Jean-Paul Ladage

  • Jean-Michel Francois

  • Carsten Senger

  • Peter Holzer

Changelog

3.1.1 (2023-04-14)

  • Fix controlpanel field validation for Plone 6 [agitator]

3.1.0 (2020-01-13)

New Features:

  • Add Plone 5.2 and Python 3.7 classifiers. [timo]

  • Add uninstall profile [erral]

Bug Fixes:

  • Don’t show interest groups if empty [laulaz]

  • Fix existing French translations [laulaz]

  • Redirect to navigation root after (un)subscription [daggelpop]

3.0.0 (2019-06-14)

New Features:

  • Prepare to work with Python 3. Isort, black, fixed deprecated Python 2 syntax AST errors. implements to implementer. Fix imports with six and avoid circular imports. [jensens]

2.2.2 (2018-06-07)

Bugfixes:

  • Fix error handling in @@newsletter to validate form extenders [csenger]

2.2.1 (2018-01-05)

Bugfixes:

  • Plone 5.1 compatibility. [timo]

2.2.0 (2017-12-07)

New Features:

  • Make plone.app.imaging a test dependency only in setup.py. This fixes an issue with Plone 5.1 and plone.restapi. plone.app.imaging is a hard dependency on Plone 5.0 (CMFPlone) and optional on Plone 5.1. [timo]

2.1.0 (2017-09-12)

New Features:

  • Plone 5.0.8 compatibility. Add plone.app.imaging to dependencies in setup.py. [timo]

  • Add @@unsubscribe-newsletter. [csenger]

  • Added basic Romanian translation [ichim-david]

Bugfixes:

  • Updated Dutch translations. [jladage]

  • Fixed ignoral of new locales directory because of option set in gitignore [ichim-david]

2.0.2 (2016-02-02)

Bugfixes:

  • Fixed MANIFEST.in so all files are added. Releases 2.0 and 2.0.1 were missing non Python files. [maurits]

2.0.1 (2016-01-29)

Bugfixes:

2.0 (2016-01-28)

  • Move code to src folder to follow best practice. [timo]

  • Set default value for interests to ‘{}’ instead of None. This fixes https://github.com/collective/collective.mailchimp/issues/19. [timo]

  • Added support for Plone 5, kept 4.3 compatibility. [jladage, didrix, maurits]

  • Updated to version 3.0 of the mailchimp api. The data that we get from mailchimp with this api version is changed. When you have interest groups in your lists, and you do not see them anymore on the subscribe form, you should visit the control panel again. This will update the data automatically. [jladage, didrix, maurits]

  • Remove bare excepts. [timo]

1.4.1 (2015-05-04)

  • Try to avoid some needless registry updates. [maurits]

  • Disable inline validation in the mailchimp control panel. It may change the cache based on a new api key that the user has not yet saved. [maurits]

  • Remove mailchimp object before updating cache. Otherwise a change in the api key is not picked up until after a restart. [maurits]

1.4.0 (2015-04-29)

  • Fix invalid pypi classifier. [timo]

  • Show control panel even when api key is invalid. Fixes issue #8. [maurits]

  • Fix fallback for missing cache after startup. [pbauer]

  • Add italian translation. [gborelli]

  • Fix UnicodeEncodeError [pbauer]

  • Add persistent cache in the registry for the connection. [toutpt]

  • Add french translations [toutpt]

  • Add brazilian translation. [cleberjsantos]

1.3.1 (2013-03-03)

  • Fix broken group subscription which has been introduced in 1.3.0. [timo]

1.3.0 (2013-03-03)

  • Add option to preselect interest groups in the newsletter form. [timo]

1.2.1 (2013-02-13)

  • Fix 1.2.0 upgrade step. [timo]

1.2.0 (2013-02-13)

  • Make newsletter view not fail if no default_list has been selected. [timo]

  • German translation updated. [timo]

  • Styles for newsletter subscription form added. [timo]

1.1.1 (2013-02-01)

  • Fix mailchimp control panel which fails if no valid MailChimp API key has been provided. [timo]

1.1.0 (2013-01-23)

  • Dutch translation added. [sjoerdve]

  • Make NewsletterForm extendable. [timo]

  • Use MailChimp list settings from the control panel. Note: You have to reinstall collective.mailchimp, otherwise you will end up with a “KeyError: ‘Interface .. defines a field .., for which there is no record.’” [timo]

  • Support for MailChimp interest groups added. For now this feature only works with one single list. [timo]

  • Email type option added. [timo]

  • Rename AvailableListsVocabulary to AvailableLists. [timo]

  • Add fieldsets to MailChimp control panel. [timo]

  • Add a MailchimpLocator utility to encapsulate all MailChimp API calls. [timo]

  • Allow multiple lists for newsletter view; add mailchimp locator to encapsulate api calls. [timo]

  • Add new default_list setting to allow administrators to choose their default MailChimp list for the @@newsletter view. [timo]

  • Add email_type_is_optional setting to allow administrators to choose if they want to allow users to choose their own email_type. [timo]

  • Make README and CHANGES .rst files. [timo]

1.0.3 (2012-12-05)

  • Missing .mo files added. [timo]

1.0.2 (2012-12-05)

  • Raise a more specific error when an email has been already subscribed to a newsletter. [timo]

  • German translations updated. [timo]

1.0.1 (2012-10-28)

  • Fix MANIFEST.in to include readme and changelog. [jone]

1.0 (2012-10-17)

  • Initial release [timo]

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

collective.mailchimp-3.1.1.tar.gz (55.0 kB view details)

Uploaded Source

Built Distribution

collective.mailchimp-3.1.1-py3-none-any.whl (68.2 kB view details)

Uploaded Python 3

File details

Details for the file collective.mailchimp-3.1.1.tar.gz.

File metadata

  • Download URL: collective.mailchimp-3.1.1.tar.gz
  • Upload date:
  • Size: 55.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.6

File hashes

Hashes for collective.mailchimp-3.1.1.tar.gz
Algorithm Hash digest
SHA256 7a43869887b94707eadbdaf2399138f7c349ffc43e190ce0cdeafb0a6a5fd72a
MD5 eb8ad0b448c582a6b644358723fa3aae
BLAKE2b-256 185ab71730162ea636129521dbbb220ab06b7911d9a94eff0d760a25d10e8733

See more details on using hashes here.

File details

Details for the file collective.mailchimp-3.1.1-py3-none-any.whl.

File metadata

File hashes

Hashes for collective.mailchimp-3.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c3709dcb3677b23a1355631d30488f06c04e892f1882b750885a39ede7a81b90
MD5 ff208a01f512dde4e900c0781b346e16
BLAKE2b-256 b18e4f10a0a88b3cab444993e12e53fb5b2c6322e8d3042cf8b012448807ffd2

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page