Digest Mailing Workflow Notes

This is an outline of an optimized ‘workflow’ for assembling a newsletter. Let me (Don) know if I Ieft anything out, or if anything is confusing and I’ll update these notes (which are the beginning of a series of notes on how to use WordPress and/or CiviCRM for various tasks.

  • Start a new post and type in a title (or copy/paste/edit last issue’s title).
  • In the ‘Single Post Template’ panel select the elist version of newsletter digest template (‘Capital Eye – elist format’ at CAG, ‘GREEN – elist format’ at WVEC).
  • Click the ‘Publish’ button. This will load the ‘default content’ for a newsletter digest. [See note 1]
  • Edit the ‘slug’ (the editable portion or the permalink) if necessary, then copy it. In the long shortcode, select the ‘’ vol-NN-issue-N’ portion of the first shortcode attribute (but not the equal sign or trailing blank) and paste the slug over it. This slug will also be used in a custom field of any post added to the article list.
  • Click publish again. At this point you are ready to add text above the shortcode, and to add posts to the article list. You can also set other info as you work – tags, featured image, excerpt, author, but leave the ‘Category’ set to ‘Uncategorized’ (so that the newsletter is not displayed on the website till it is completely ready). Open the ‘view post’ link in a new tab, which you can refresh after adding each post to be sure you checked all the boxes.
  • Adding an existing post to the article list
    • Copy the slug of the above post (or be able to type it from memory) and open an edit window for post you wish to add (there are conveniently located ‘edit’ buttons on the home page for existing posts).
    • In the ‘Add New Custom Field’ area of the ‘Custom fields’ panel, click on the drop down list, select ‘a_newsletter_volume_issue’ and paste or type the slug into the value field. Click ‘Add Custom Field’.
    • In the ‘Add New Custom Field’, click on the drop down list, select ‘aa_sort_order’ and type in an arbitrary number, such as 10. Articles will listed in ascending order. Using numbers like 10, 20, 30, 80 allows for greater flexibility when re-arranging the article list order than using numbers like 1, 2, 3
    • Change the ‘Single Post Template’ to ‘Newsletter article.’ This will put an index for this specific issue of the newsletter into the sidebar (allows people to read multiple articles without having to go back and forth between emails or another post).
    • Click update
  • Adding a post meant to be included only in the newsletter (not to be displayed on the home page as a stand-alone post).
    • Make a post in the usual way, but set the ‘Category’ to ‘Newsletter article.’ Posts in this category are not displayed in the ‘recent posts’ list on the home page or elsewhere.
    • Follow the instructions for adding an existing post to the article list
  • Back in the digest post edit window, be sure you added an excerpt, tags, featured image, and set the author. Click update.  [See note 2 for important nuances]
  • Open a CiviCRM window and click ‘Mailing – New Mailing.’ After the mailing window opens and initializes itself, select the newsletter post in the ‘Template’ drop down list. The newsletter post should appear in in the ‘HTML’ panel. Scroll through the HTML panel to be sure the text is correct and all articles are there (review note 2 if necessary).
  • If you’ve had to go back and update the newsletter (typos, missing articles, etc) you can reload the template in CiviCRM by clicking the ‘x’ next to the template name in the ‘Template’ drop down list, the re-selecting the same template.
  • Edit the ‘Subject’ field if necessary (the email subject line) and type in a name in the ‘Mailing Name’ field (or copy/paste the subject).
  • Select the newsletter  list in the ‘Recipients’ drop down list.
  • If you want to add an email greeting, put the cursor on a blank line just above the text portion of the newsletter and select the ‘Contact – Email greeting’ token at the upper right of the HTML window.  Or just paste in {contact.email_greeting}
  • CAG has two different email footers.  The default footer is for targeted mailings, but for alerts or newsletters it is better to click on the ‘Header and Footer’ tab of the CiviCRM mailing window and select the footer named ‘Mailing Footer,’ then re-select the mailing tab.
  • If you’ve done all the above, and the email doesn’t contain any invalid html (like twitter scripts), the ‘Send test’ and ‘Next’ button at the bottom of the mailing window will become available for clicking.  Send a test to yourself and verify that everything in the mailing looks right and that any untested links work as expected.
  • If the test mailing is correct and ready to go, click the ‘Send’ button. 
  • Click on ‘Submit Mailing’ to schedule the mailing to be sent immediately(esque), or set a desired time  and then click ‘Submit Mailing’ if you want it to go out later.  WHen sending immediately a couple brief ‘error’ messages may pop up saying the scheduled time is past (because the server clock may be a little bit ahead of your computer clock) – CiviCRM will still send the message the next time the Send-Mail Cron job runs. [See note 3]
  • Go back to the edit window for the newsletter post in WordPress (or re-open it if you’ve closed it). Change the ‘Single Post Template’ to the online format (‘Capital Eye – online format’ at CAG, ‘GREEN – online format’ at WVEC.) 
  • Also change the Category from ‘Uncategorized’ to ‘Newsletter’ and click update.
  • Verify that the newsletter post appears on the home page and that the post is now in the proper online format


Note 1: If the content field is empty when WordPress saves a post, WordPress checks whether default content has been defined for the chosen template and loads it into the content panel. The default content for a newsletter includes two ‘shortcodes’ in the newsletter header that automatically show the date and ‘view online’ link, plus a long shortcode to display the article list (‘long shortcode’  – a WordPress oxymoron).

Note 2: When a post using an ‘elist’ single-post-template is updated WordPress automatically saves a copy of the content in the CiviCRM ‘message template’ table.  Even if you’ve set all the misc fields in the digest post and all the posts are showing up in the online view, it’s important to ‘update’ the post after adding all the articles, because the CiviCRM copy of the post is only updated when the post is updated.  If you notice any missing articles when you get into the CiviCRM steps, just open the digest post and click update to refresh CiviCRM’s copy (then reload the ‘template’ in the CiviCRM mailing window).

Note 3: The mailing job run every 10 minutes, so if you schedule a mailing to go out at 9:25, it won’t actually start going out till 9:30.  Also, CAG’s elists are so big that they time out the mailing process on the server. When that happens CiviCRM simply resumes sending the list the next time the mailing job is executed (within 10 minutes).  Depending on time of day, mailings may take slightly longer due to load on the mail server (and how many times it times out). For a list of 4000 names it will take 20 to 40 minutes for the mailing to finish swending. If you refresh CiviCRM’s Mailings-Scheduled and Sent Mailings’ page it will tell you whether the mailing is still scheduled, running or completed (this is the page you land on after clicking ‘Submit Mailing’).