This plugin extends Participants Database by providing several new ways to trigger and send custom emails. This add-on also provides a highly flexible way to define multiple email templates for many purposes. These templates can be configured to send on various events from Participants Database and it’s add-ons. All the email templates make use of “value tags” that are substituted with the value from the member’s record so you can personalize your messages.
Send “Welcome” Emails
Manually send the Participants Database signup thanks email to one or more members on your list. It makes a good way to welcome members who have been added to the database, you can give them their private link and any other information you want to give them, including multiple attachments.
Send Any Template Email to The List
This add-on gives you the ability to send your custom email to selected members on your list. Just define your email template, select the records that should receive it, and send!
Send Notifications Out when a Blog Post is Published
If you’ve got Participants Database signups opting in to your mailing list, let them know when you’ve posted something new! You can even send them the whole article with images.
Multiple Signup Email Templates
This plugin gives you the ability to define multiple signup email templates that are configured to be sent based on the content of the signup: for instance if you had a signup form for teachers and students, they would each receive a different “welcome” email when they sign up. There are many other ways these can be configured. The template also defines the “thanks” message shown on the page after submitting the signup, so different “types” of signups could see a different thanks message.
Welcome Email on Approval
One of my most-asked-for features, this gives you the ability to only send the “welcome” email to signups that have been approved. An email template can be configured to send when the state of the “approved” field changes to “yes.” Of course, many other possibilities are available, using a flexible conditional event configuration.
Mass Email Information
Although this plugin has the ability to send email to a list of recipients, the number of recipients in a single mailing is limited to 100 or less. More info…
This plugin provides the email templates to other Participants Database Add-Ons that need to be able to send emails, so that all of your Participants Database custom email templates are configured and organized together. This plugin also makes it easy to add your own custom email functionality.
How It Works
This add-on works by enabling the creation of multiple email templates that can be triggered to send on a variety of different events and actions. An email template consists of all the elements you need to define an email, such as the subject, recipient, body, etc. This is called a template because the elements of the email may contain “value tags” (just like in the Participants Database email settings) where information from the user’s record can be included in the email through the use of a placeholder.
Each email template has a “Send Action” that determines when the email will be sent. There is a selection of useful actions available to choose from such as when a signup occurs or when a record is updated. Emails can also be sent manually. Other Participants Database add-ons that need email functionality will add their actions to the list so that you can use your custom email templates for that as well.
Sending to Selected Records
Participants Database has a new feature, the “With Selected” bulk actions that are now available on the admin record list. With this add-on, it is possible to trigger the sending of an email on those actions as well. This is how you would, for instance, send a “welcome” email to members that had been added to the list, or to notify members that their application had been approved.
Sending When Certain Conditions are Met
It’s possible to set an email template to send when a record is updated. By setting a condition on the trigger, it’s possible to have that email send when a field is changed to a specific value. For instance if someone indicates they want to join a committee, the chair of that committee could receive an email letting them know someone is interested, supplying their contact info.
For actions that are related to the updating of records, there is an option to only send the email if the value of a record has changed. This means that if you have an email set up to trigger when a certain value is selected, the email will only be sent the first time that value is selected. Subsequent updates to the record values will not trigger the email template.
After installing and activating the plugin, the first thing to do to configure this add-on is to define your custom email. In the admin menu, under “PDb Email Templates” select “new template” and you’ll be shown a screen where all the components of your email template are defined.
Each template has a name that is used to identify the template and its purpose. Below that, you have fields for defining the sender name and email, and also the recipient name and email. All of these fields can be filled using a value tag so that, for instance, the email goes to the name and address defined in the record.
An email must have a subject, you can use value tags there as well if you want to personalize the subject line.
The body of the email may contain HTML, styled text, links, images, etc. and use value tags as well.
Below the email body, you can set up email attachments. Simply select the file you want to attach, and it will be sent with the email when it goes out. To add another attachment, click on “add attachment” and choose another file to include.
In the email template and subject settings, you can use value tags to show a value from the record that is associated with the template. These tags take the form of [fieldname] and you can include any defined field in the record that way.
There are also additional value tags that can be used:
[record_link] provides a link to the user’s editable record
[admin_record_link] provides a link to the record in the admin
[single_record_link] provides a link to the record (not editable) display page
[date] shows the current date using the site’s date format setting
[time] provides the current time using the site’s time format setting
Configuring the Send Trigger
Each email template is configured to be sent under certain conditions. Usually, this is when a specific event occurs, such as a record update, or a record gets approved.
Under the “Send Action” title is a dropdown selector where you can choose the event or action that will trigger sending this template email.
To send an email to selected records on the list manually (such as a newsletter or announcement) select Admin List “With Selected” Action for your action. The sending occurs on the Participants Database admin list participants page: select the records you want to get the email, then select your email template in the “with selected” action dropdown. Hit “apply” and confirm to send the email to all selected records.
Setting Up Conditional Sending
When an email template is triggered, you can check the values in the current record (an email send event is always associated with a record) to see if the template should be used. There are three basic ways the conditional send can be used:
Compare the value of a field in the current record against a fixed value
this is best for determining what kind of record it is so you can use different templates for different kinds of records
Compare a value in the current record against the previously saved value
this is for triggering an email if a specific value in the record has been changed
Compare the currently selected locale against a list of locales
this is so you can define different templates for different languages
Comparing Against a Fixed Value
If you need to send a particular email based on the value of a field in the record, this will allow you to do that. For instance, you could have two different “welcome” emails for your members, one for each of two types of membership. The incoming value is compared to the comparison value and if the operation resolves as “true” the email is sent.
The comparison value can be any value you need to compare. It can also be a comma-separated list of values. If any of those values resolves as “true” the email template will be used.
Send on Field Value Change Only
If the condition is set to trigger when a specific value is selected, this preference will only trigger the email the first time the value is selected.
Comparing Against a Saved Value
This is used when you want to send out an email when a particular value in the record has been changed. For instance, if a member changes their email address, an administrator gets notified.
Comparing Against the Current Locale
If you have a multilingual site, you can set up a different email template for different locales. The comparison value can be a comma-separated list of values so that several closely-related languages can use the same template.
User Feedback Messaging
For the “signup submission” and some other actions, the user is presented with a feedback message on the screen, and this can be customized on a per-template basis as well. Just put your message in the “user messaging” field and it will be presented to the user. Each template has it’s own user messaging field, so each type of signup (for instance) can have different messaging.
Email Session Send Limit
This plugin is not intended to be used as a mass-emailer: it has a built-in limit to the number of emails that can be sent in a single session. This means that if you try to send an email to more than 100 (the default limit value) recipients, only the first 100 will be sent. The main reason for this is the plugin does not have the capability for extended operation that would be needed to send to a larger list of recipients. Technically, the script sends all the emails in one operation and most servers will have a limit to how long a single operation can run, typically 30 seconds.
The easiest way around this limitation is to send your emails in batches of 100. If that is not practical, I’d suggest you use either a newsletter plugin or a 3rd party mass-email service.
Another consideration is the plugin does not provide a mechanism for an “opt-out” or unsubscribe which is required by law on mass email in some areas. If you are using shared hosting, in most cases sending mass email is not allowed, and there will be a low limit to the number of emails sent in a hour. While it is possible to override the plugin email session send limit value, this is not a supported use of the plugin.
An Example of Using a Comparison Against a Fixed Value
To illustrate this, let’s suppose you have a registration form for two different kinds of registrations: one for students and one for teachers. To set this up, create a new template, (it will be for the students) and set the “Send Action” to Signup Submission. Enable the “Send On Condition” checkbox and below that, you’ll see new fields.
First is “Participants Database Field” set that to the name of your “type” selector in your signup form, so that the template knows which field to check.
Next, select an Operator: in this case you want “Equals” because you’re testing against an exact match, as you’ll see.
Now, set up the comparison value. To check the submitted value against a specific string, choose “Comparison Value” and then below that, type in the value that the template will look for. If the applicant is a student, the comparison value might be “student.” If the incoming registration submission has a “type” value that equals “student” then use this template and send the email.
Next, you set up another email template for the teachers. It will be checking the same field, but for the value “teacher.”
Sending an Email When a New Blog Post is Published
If you’d like your list to receive an email when you post something new, use the “Blog Post Published” email action in your template.
You can use several tags in the email to include content from your blog post: [post_title], [post_content], [post_excerpt], etc. The [post_content] tag will include the whole article, including any images. (embedded media such as audio or video won’t work, however) To provide a link back to the post, use the [post_permalink] tag to generate the link. The post featured image can be included with [post_thumbnail].
Set up your “Send on Condition” to only send to those who have elected to receive your mailings. For example, if you have a checkbox for people to opt-in to your list use that as your condition for sending the email…such as in the example to the right here.
This is not a “mass-email” feature, you will be limited to 100 emails generated by this action. See above for the reasons why these limits are in place.
The “Blog Post Published” email action can also be used to send notifications to a plain list of emails also, of course.
The Email Expander Add-On does not use a settings page, instead, each template has it’s own configuration.
Gives the template a name. If you have several templates, it’s a good idea to use something descriptive here so you can find the template next time you need to edit it. You can change this any time, it won’t affect the template’s function.
Sender Name, Sender Email
The email should be from a legitimate sender so the recipient knows it is not spam. Value tags are allowed.
Recipient Name, Recipient Email
These will often contain value tags so that the email is sent to the person registering. This could also be any fixed email address. The name is optional.
It is possible to send the email to multiple recipients. If you want to include a fixed email address as a CC or BCC (such as to an administrator), there are fields for that below. If you need to send to multiple email addresses using value tags from the record, you can enter those here as a comma-separated list of email addresses, for example: [email],[email_2]
The subject line of the email, can use value tags.
Email Body Template
The is the main part of the email, you can put HTML, headings, images, styles, etc., but be aware that many email clients have limited ability to render HTML Keep it simple for best results.
CC, BCC Recipients
Just under the attachments are settings where you can add additional recipients to the email. BCC recipients won’t be visible to other recipients, while CC recipients’ emails will be visible to all recipients. This field does not process value tags, you can add more recipients using values tags in the Recipient Name and Recipient Email fields above.
This section allows you to include files with the email. Simply select a file (either from the media library or upload a file) and the user will receive the file when they get the email. You can include multiple files by adding more attachment lines. Remember that any attached files will have to be downloaded by the recipient, so keep it small to avoid problems on the receiving end.
Some actions use this field to show the user a message after the action has occurred, such as after submitting a signup form. This gives you a way to customize the user feedback message according to the email template that was used to send an email.
The Send Configuration
Each email template may have a “Send Action” that determines when the email will be sent. Some of these are automatic, some are manual: waiting for an action by an administrator to be sent.
Signup Submission: the email will be sent when a signup form is submitted. This action duplicates the default action of Participants Database, and so if this template gets used, it prevents the default email from being sent. This means that if you set up a template here that sends on certain conditions, the regular signup email will be sent unless those conditions are met.
Frontend Record Update, Backend Record Update: this action happens when a record is updated. The frontend update happens when a user edits the record after accessing it with their private link, or when the frontend record edit form is used in any other way.
Frontend Record Pre-Submit Update: this action happens just before the updated record is saved on the frontend. This gives you a chance to check for a changed value because you’ll have both the new and old values to check against.
Multipage Record Update Thanks: this email is triggered when a user completes a multi-page record edit form. It requires that the user end up on a page with the [pdb_signup_thanks] shortcode when the final page is submitted.
Admin List “With Selected” Action: this gives you a way to define a custom email that is sent manually to a selected list of recipients by an admin in the backend. If you set up a template with this action, it will appear in the bulk actions dropdown in the Participants Database admin list page so you can send your custom email to the selected members.
Note that this will only send to a limited number of recipients, 100 or less to avoid script timeouts, so it can’t be used to send out to your list of thousands. Also, be sure you know your web host’s mass email policy to avoid problems with your hosting.
Admin List With Selected: delete, approved, unapproved: this action is triggered when a bulk action is performed on the list. An email will be sent to every selected record when this action is triggered.
Send on Condition
This setting gives you a way to determine if the email should be sent. Enable this to have a condition checked before sending the email.
Participants Database Field
This selects the field that is tested. It must be a field that is included in the submission, either as a user input or as a hidden field.
This gives you several ways to make a comparison to determine if the email should be sent.
Comparison Value Source
When the value in a record is checked, it will be checked against the comparison value. This value can come from one of three places: either as a literal value, against the saved record, or against the current “locale” value.
Comparison Value checks the record value against a set value. This value is found in the “Comparison Value” field below.
Send on Field Value Change Only when checked, will only send an email when the record value is changed to the comparison value. It will not trigger if the comparison value matches, but isn’t getting changed. (this is only available when the comparison source is Field Value to Fixed Value)
Saved Value checks the incoming or new value against the previously saved value. This value is only valid when the trigger is a record update because it requires that the record be in the database beforehand. The purpose of this is to give you a way to check against a changed value, so that the email will only be sent when your selected field value is changed by the user or an admin.
Current Locale Setting: this value is the current language selected. If you have a multilingual site, this gives you a way to send a different email depending on the language chosen. It will be the usual WordPress language abbreviation, usually something like “FR_fr” or “BR_pt”.
If this is checked, an email that uses the same template going to the same address as an email that was sent in the last 24 hours will be blocked as a duplicate. This is mostly to prevent accidental resending.
Product-specific technical support can be found here: