Skip to main content

A complete Newsletter product for Plone.

Project description

Tested and found to be working on Plone 4.1.3 (4112) tested by
[morphex] and and Plone 3.3 [vincentfretin]

This is the PloneGazette product


o Zope 2.10.4 or later

o CMFPlone 3.0

o MaildropHost (optional) : this product is highly recommanded for
mass mailing.

Installation :

untar the file inside the "Products" directory, restart zope, and
install the product on your plone site with QuickInstaller or apply
extension profile.

**!! If you are upgrading from older versions, please read UPGRADE.TXT !!**

Adding a newsletter subscription portlet

Use @@manage-portlets link and add Classic portlet. Enter
*portlet_gazette* as portlet name
*portlet* as macro name


The look of the HTML newsletter

You may change globally the way the newsletter are rendered by
customizing the "newsletter_mua_formatter" template. Be very
careful to follow the instructions in the comments of this
template: "newsletter_mua_formatter" is **not** a Plone template
like the others.

You may have your own HTML newsletter formatter. Copy
"newsletter_mua_formatter" to
"/yourplone/skins/custom/my_mua_formatter" or anywhere else in the
skins path. You just need to modify your NewsletterCentral, setting
the "Newsletter render template (TALES)" field to

Add your own recipients list

Just write a script that returns a list of tuples in the form ::

[(email, html, changeUrl), ...]

o "email" is a mail address

o "html" is "HTML" to receive HTML newsletters and "Text" for plaintext

o "changeUrl" is an URL where the user may change his newsletter preferences

Example ::


Call that script "/yourplone/skins/custom/additionalSubscribers" or
anywhere else in the skins path. Modify your NewsletterCentral
setting the "Extra recipients (TALES)" field to

In example, you could add newsletter settings in the member
preferences of your Plone site and make a script that gathers all
subscribers and related options.



Please be sure your Subscribers folder is always private. Otherwise Anonymous
will be able to see all your subscribers.

Subscriber objects itself uses one_state_workflow to be always accessible to
anonymous (all users has to be able change own settings and we can't distinguish
between anoynmous users).

Instead of using the standard CMF/Plone permissions ("Add portal
content"), PloneNewsletter comes with its own set of permisssions
such you can tweak the roles that can add/manage newsletter related

o PNL Add Newsletter Theme, PNL Change Newsletter Theme

o PNL Add Newsletter, PNL Change Newsletter

o PNL Add Subscriber, PNL Change Subscriber

More informations :

The NewsletterReference type allows to refer any portal_type
of the site within the newsletter.

In the Newsletter the Referece has a title, a description, and
an unordered list of the referenced objects
(showing their title and descrtiption)
In our usecase we need to build a newsletter with different
reference objects. They need

* Title
* Descriptive text with richtext functionality (text is not taken
from the referred content type)
* an optional image
* and of course the reference to a content object within the portal

The differences to the currently availablle NewsletterReference are

* richtext edit (to have more freedom of design within the newsletter)
* preview image (to provide icons for types that don't have a preview
image, and also to provide a different format that fits the layout
of the newsletter)

If you have any questions about NewsletterRichReference
contact <> (fRiSi on #lovely)

PloneGazette was originally developed by PilotSystems:


3.2 - (2012-02-09)

- Added backwards-compatible patch for Plone 4.1.3, TinyMCE 1.2.9
which fixes error messages when editing a Newsletter.

- Added more Norwegian translations and improved some of them.

- Added support for internal-links which didn't have the CSS class

- Added Plone 4.1 compatibilty.
[nteixeira, sdemagny, vincentfretin]

- Added compatibility.
[fdelia, keul, vincentfretin]

- Added a migration step that'll try and make private all
NewsletterBTree objects. The devastating effect of these becoming
public during the upgrade process is that the Google bot will
delete all your subscriptions. [nouri]

- Fallback to 'MailHost.send' if 'MailHost.secureSend' is not
available. [nouri]

- Support specifying the id of the MailHost to use through an
environment variable. [nouri]

3.1.1 - 2009-10-22

- Fixed "Link to member preferences does not work" (#63). Thanks to Gauthier
Bastien for bug report.

- Added separate subscriber_workflow which allows to edit subscribers
objects anonymously. Please read UPGRADE.txt how to run GS upgrade step to
switch existing subscribers to this workflow.

3.1.0 - 2009-10-18

- Add the possibility to define a newsletter header similar to
newsletter footer. And add a field for defining CSS style
properties that go into the <body> element of the newsletter
that's sent out (but not into Plone's view of the
newsletter). [Ingo Van den Broeck, nouri]

- Update the role mappings of a Subscriber during creation. We got
Unauthorized errors when trying to edit the subscriber
anonymously. This was fixed by clicking the 'Update security
settings' button on the portal_workflow tool. This code fixes it
too. [maurits]

- Subscriber class now has a portal_type attribute. This fixes a bug
with failing to create new subscribers while having a contentrule with a
portal_type condition active. [Huub Bouma]

- Fixed bug where a faulty email address (without even a '@') would result
in a zope error instead of a template which renders the error. [reinout]

- listFolderContents and getFolderContents moved back to the subclasses.
Plone 3 has another implementation of the folder listing.

3.0.0 - 2008-07-11

- fixed test newsletter if testing user were subscribed but not activated

- all emails are now encoded. In case of utf8 emails, these will be generated
in base64 encoding. Subject is encoded too (if applicable). This may
fix situations described in #37 and #40.

- Fixed listing of NewsletterRichReference. This fixes #36
[Guido A.J. Stevens, naro]

- added changeRelativeToAbsolute method which converts all relative links
generated by Kupu to absolute links.
[Ralph Jacobs, 4D]

- Moved listFolderContents and getFolderContents to PNLBase class. This
fixes #34.

3.0.0-rc2 - 2008-03-22

- added missing i18n:domain to browser/configure.zcml [hannosch]
- fixed getUrl -> getURL [naro]

3.0.0-rc1 - 2008-02-17

- fixed attribute error when accessing NewsletterBTree folder contents (#30)
- fixed UnicodeError when activation subject or body contains non ascii
- PG is registered to all skins layers
- another subscribers catalog fix. Catalog is based on CMFCore. catalog tool instead of ZCatalog

3.0.0-beta2 - 2007-12-06

- fixed initialization of subscribers catalog. Thanks to Wouter Vanden Hove

3.0.0-beta1 - 2007-12-03

- see UPGRADE.txt for upgrade notes, see README.txt for general installation and usage notes.
- only major change against 2.5 version is creation of subscribers catalog
inside NewsletterTheme objects. All Subscribers are stored in the subscribers_catalog
to be easily and fast found and listed.
- Content types are still CMF based, code is not polished and optimized.
- removed Extensions/ dir, added basic GS profile with content types and skin layer
- use secureSend. Emails are generated as email.Message.Message instances and not strings
- make all forms and object manipulation working in Plone 3
- cutoff Plone 3.0 compatible version. Dropped Plone 2.1 and 2.5 compatibility.
If you want to use PloneGazette on Plone 2.5, use 2.5 branch and versions in
PloneGazette 2.5 line.

2.5.0-beta1 - 2007-11-25

- fixed HTML markup in subscriber edit form to support <label> in radio boxes
- fixed testSendToMe
- fixed toLocalizedTime definition (plone 2.5). Thanks to Andrew Kornilov for
pointing to it.

2.5.0-alpha1 - 2007-11-24

- replaced toPortalTime with toLocalizedTime in Newsletter view. Fixes #11
- added getFolderContents method to the NewsletterTheme.
This fixes #4 - Subscribers do not appear in folder listing or view
- do not use secureSend in combination with email.Message.Message.
There is bug in SecureMailHost used in plone 2.5 which prevents this
combination (#6504)
- trying to stay compatible with Plone 2.1 for the moment
- removed metadata and duplicate Contents tab from newslettertheme and

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

Products.PloneGazette-3.2.tar.gz (150.0 kB view hashes)

Uploaded source

Supported by

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