Automated is an extension for the Newsletter plugin which generates and sends automatically newsletters, created from the latest blog content. Automated creation of newsletters can be planned daily, weekly or monthly in a great variety of ways. Blog contents can be filtered by category, and post type and an infinite number of channels can be created letting subscribers choose from your great information stream offer.

What's inside

Since version 4.2.5 we’re introducing compatibility with WPML on the default theme where the language can be chosen to extract only localized content.

Automated supports the newsletter design with our composer so you can stack different kinds of blocks.

Blocks which are by nature “dynamic” because they extract the content from the blog, are “regenerated” every time a newsletter is automatically created. And you have fine control over conditions that may need to block the newsletter delivery (for example where there aren’t new content. See more later on this page.

Don’t miss

Setting up a new channel

A channel, and you can create as many channels as you want, is a set of configurations comprising:

  • the newsletter generation scheduling (weekly, montly – on specific days, daily)
  • the delivery time (day hour)
  • the newsletter design with dynamic blocks which fetch content from the blog
  • the dynamic subject
  • and some other minor configurations

Since version 4.4.0, Automated fully supports the Newsletter composer, so the email layout can be freely designed. Of course, the newsletter should contain at least one dynamic block (usually a block which extracts posts but we support every kind of custom post type and some event management plugins and WooCommerce products).


By default your channel targets every subscriber. You can configure it differently to target a specific list. It is useful if that list is then available on the subscriber profile page so she can opt-in/opt-out to your automatic newsletter.

Dynamic blocks and regeneration behavior

When a newsletter is generated, all templates block are refreshed. Someones just remain unchanged since they’re static, while others (Posts, Events, …) are rendered with the new content available from the blog.

When a block is able to pull out fresh content from the blog can usually be configured to behave in different ways:

  • stop the newsletter generation if there are no new contents from the last newsletter sent
  • skip the block from the current newsletter if there is no new content
  • just write a simple text if there is nothing to show

When a block is configured to stop the newsletter generation because there are no new contents to include, other blocks’ behavior becomes irrelevant and the newsletter is “skipped”.

The concept of “new content” and what to include in a newsletter can be configured. For example, you can decide to send the newsletter when there are new contents but include even the old ones sent with a previous newsletter. Or just send the new ones.

This great flexibility can sometimes produce unclear behaviors: be sure to check all the dynamic blocks included to understand all possible scenarios.

Dynamic blocks and the subject

When it’s the right time to create a new newsletter, the automated engine rerun your design and check if at least one of the dynamic blocks you inserted has new content. If not, the newsletter is not generated.

Each dynamic block can suggest a subject for the newly generated newsletter. Since there could be more than one block, the subject generated by the first one is kept. If the general subject configuration is left empty, the first block suggested subject is used. Otherwise, the general subject is considered and you can use the {dynamic_subject} new tag to reference the suggested subject.

In this way, you can create more sophisticated subjects like: {date} updates: {dynamic_subject}.

Planning and sending hours

Planning is weekly or monthly. On weekly schedules, the days of the week can be selected. You can set up a single Monday issue or double week issues, for example on Monday and Thursday. You can eventually offer a channel with a weekly summary and another one with a daily summary (selecting every day in the week).

Monthly scheduling is based on days of the week: first Monday, second Monday, and so on. There is a reason: sending an email on the first day of a month means to send it one time on Monday, another time on Sunday, another one on Thursday. This is not usually a good idea.

The Automated Extension scheduler

Sending hours and DST (Daylight Saving Time)

A channel can be set to send the generate and newsletter at a specific time (of course only on planned days). Usually, you want to set it when your audience is more likely available to read the newsletter. Anyway, keep in mind that with a large database it could take hours to send to everyone.

A second optional time of day can be set to have a channel generating and sending two newsletters in a day. It is sometimes used by magazines or news sites that want to send two updates, one in the morning and the other one sometime in the afternoon.

Blogs in timezones with DST (Daylight Saving Time) could experience a shift of 1 hour when the official time changes. It’s a known problem, the channel options should be saved to reset the internal timer.

Preview for newsletters designed with the composer

Channels that have the newsletter model built with the composer, have a preview tab where the newsletter is shown as if it would be is sent at that precise time. Of course, if the conditions (settings, new contents, …) meet the criteria of “do not generate a newsletter” the preview will be blank and a message shown.

Setting up an old classic channel

Channels based on the previous classic or custom theme are still there and will be kept.

Posts to extract

Posts can be extracted without filters or by selecting one or more categories. Custom post types are supported but sometimes theme customization is needed to extract from them all the custom fields.

There is no correspondence between your blog categories and Automated channels. Since readers don’t care too much about your internal category organization, is up to you to create channels with one or more categories that can be of interest to your subscribers.

Read, for example, how to organize the channels for a Magazine blog.

Post are extracted applying those filters and starting from the date of the last newsletter, so the posts which are added are always unread posts (anyway a theme can add a list of “old posts” in the lower part of the newsletter).

Generating the newsletter even without new posts

In some special situations, usually with a custom theme, you may need to have Automated to generate the newsletter even if there are no new posts. Enabling that special feature, Automated invoke the theme passing it an empty list of posts.

The custom theme can extract/generate the content in a different way than using the latest blog post (for example extracting special post types or like). If the theme detects there is nothing to send it can exit before generating any content and Automated will detect it stops.

In the plugin subfolder “themes/samples" there is a theme named “always” which can be used with the option this special option active. Copy the theme in the “wp-content/extensions/newsletter-automated/themes" folder (create it if necessary) to start using and customizing it.

Themes and previews for old style channels

In the theme panel, a theme can be chosen, and once saved, its options panel is loaded. The theme is able to show the extracted posts, offering few options to control the layout or other kinds of content (header, footer, and so on).

Two previews are available:

  1. the theme preview is built extracting few posts and composing a generic newsletter: it helps to get an overview of how the theme looks.
  2. the newsletter preview is the real newsletter that would be sent if generated in that moment. This preview can be empty if there is nothing to send to subscribers (no new content from the last delivery).

You can make your own custom themes, they must be placed in the “wp-content/extensions/newsletter-automated/themes" folder (create it if necessary). Read more about themes.

Last delivery date

The last delivery date is used to extract fresh posts (and to check if there are fresh posts). This date can be changed on the status panel. Usually, there is no need to modify it but there are few cases (usually server crashes) where it could be a smart choice to move back that date to regenerate the newsletter. Just a dramatic example.

The status panel shows even the new posts which will be part of the newsletter.

Generated newsletters and statistics

The tab “Newsletters” lists all the generated newsletters for that channel, their status (sent, sending) and gives action buttons to delete the newsletter or access the statistics.

Subscription to channels

As said, every channel is connected to a list, so you can think of a list as an option for the subscriber who wants to receive updates. Upon regular subscription you can offer the subscriber one or more lists he can decide to opt-in, or you can automatically opt-in one or more lists forcing those lists to the new subscribers (see the subscription configuration panel).

Promoting a single channel

With the new shortcodes, you can even create a specific form for subscriptions to a specific list. So you create a landing page with that form:

[newsletter_form button_label="Go!" lists="1"]
[newsletter_field name="email" label="Your best email"]

Just remember that an already subscribed email address is correctly managed by Newsletter: the subscriber experiences a regular subscription but the collected data is merged with the old one.

Promoting your brand new channel to old subscribers

If you set up a brand new channel and you want to promote it to your old subscribers, the best way is to make the associated list available as public (at least on subscriber’s profile – see the lists panel) and send a newsletter inviting people to activate that option.

Or, to be more aggressive, you can associate every subscriber to your channel list and then send a newsletter to inform about your new free service (with the option to disable it by modifying the profile). It’s up to you!

Newsletter design ideas

Two posts blocks

Imagine a newsletter model with two posts blocks: a main block on the top and a secondary block, with posts from a specific category, later in the newsletter body.

You may want to set the main block to stop the newsletter creation if there is no new content t be sure your main elements have something new for your subscribers.

The secondary block can be set to be included anyway, simply extracting what is available in the blog (being it old or new).

Or you can set it to be skipped if there is no new content. More you can set it to include only new content or include the number of posts configured only if there is something new. A lot of options, but it’s easy, don’t worry!

Mix different types of blocks

There are different types of dynamic blocks supported. For example, with the WooCommerce Addon you have a block to extract products. With our Tribe Calendar or Events Manager Addon, you can integrate those two famous plugins. Or with the Extended Blocks addon, you can extract generic custom post types.

You can mix those blocks in a single newsletter and set a few of them as “mandatory” (the must-have content for the newsletter to be generated and sent) and other complementary, to be included anyway, or skipped if there are no new contents.

We recommend having at least one main block which controls the newsletter generation and delivery.

Advanced topics

Importing old Feed by Mail subscribers

If you’re using Feed by Mail Newsletter Addon and you’re planning to migrate to Automated (highly recommended), you can “import” the Feed by Mail subscribers into the list you selected for a channel. There is an import button on the channel configuration panel.

Here are the steps:

  • prepare the Automated channel and set the list you’re targeting (the list can be empty or have already subscriber inside)
  • save the channel
  • use the “import” button to assign the active Feed by Mail subscriber to the channel list

Subscribers who opted out from Feed by Mail, won’t be added to the channel list.

Of course, if you are targeting all subscribers with your automated channel, you don’t need to import them from Feed by Mail.

Tech note

The subscriber table wp_newsletter has a special column to track the feed by mail subscription. If you need to act at the database level, the feed columns can assume three values:

  • 0 – means the subscriber is NOT connect to Feed by Mail
  • 1 – means the subscriber is connected to Feed by Mail
  • 2 – means the subscriber explicitly opted-out from Feed by Mail

General configuration and administrator user

Automated newsletters are generated when no one is logged in, in a background process. In some cases, Automated cannot extract the latest posts for example when all of them are private or blocked by a membership plugin.

Setting the administrator users on Automated general configuration allows Automated to “simulate” an administrator logged in when generating the newsletter. That could (not granted by the way) lets Automated access private or locked posts.

Common issues

Wrong delivery hour (DST problems)

If in your country there is a seasonal hour change (DST), Automated can get wrong since the WordPress scheduler does not automatically correct the delivery time (Automated is still reporting the right hour on configuration pages). We’re trying to find a solution, meanwhile, you need to re-save each channel so the internal WP scheduler is adjusted.

Newsletter generation has been skipped

Please, see the Automated channel log page for an history of the channel activity.

Usually, the missing newsletter generation is due to a wrong template configuration.

Check the posts block and its filtering conditions to be sure it can find new posts to be sent. The Posts block adds to the filter the timestamp of the last delivery to not include “old” posts (if configured for this behavior): while composing this extra filter is not active so you can see even the old posts.

If you have more than one Posts block, and every block is configured to “stop” the newsletter when there are no new posts, be sure all of them can find something to include or configure just one block to “stop” the newsletter generation.

Automated creates two newsletters and not just one

Check if the channel has been configured with a second delivery time (used to send twice in a day).