The Wait Until Date step pauses a contact until a fixed date or a date stored on the contact, such as an event or renewal date. The Load Post Data step pulls the title, link and custom fields of a post or page into the automation, so your emails can show them. Together, they let you build date-based journeys such as event reminders.
These steps require MailerPress Pro and MailerPress 2.1.0 or later. Since 2.1.2, dates follow your WordPress timezone.
Prepare a date custom field
To wait for a date that differs for each contact, store it in a contact custom field (an extra piece of information you save on each contact).
- Go to MailerPress > Audience > Custom Fields.
- Create a field with the Date Field Type. Note its Field Key (for example
event_date). - Fill the field for your contacts, for example when you import or edit them. Use the
YYYY-MM-DDformat, optionally followed by a time:2026-11-20or2026-11-20 18:30.
Add a Wait Until Date step
- Open your automation from MailerPress > Automations > All automations.
- Click Add Step where the pause should happen, then choose Wait Until Date in the Timing category.
- Select the step on the canvas and fill in its settings (see the table below). The step then shows a summary such as โ3 days before {{event_date}}โ.
| Setting | Description |
|---|---|
| Date source | Fixed date (the same date for everyone) or Contact custom field (each contact’s own date). Default: Fixed date. |
| Date | With Fixed date: the date and time to wait for, picked in a calendar. |
| Date field key | With Contact custom field: the Field Key of the custom field that holds the date, for example event_date. |
| Offset and Unit | Optional shift of the target date, in hours, days or weeks. Default: 0. |
| Direction | Before the date (default) or After the date. |
| If date is in the past | Skip and continue (default) or Stop the workflow. |
How the target date is calculated
- Dates use the timezone set in WordPress under Settings > General > Timezone. The scheduled time shown in the automation logs uses the same timezone.
- A date without a time means midnight (00:00). With
event_dateset to2026-11-20, โ1 Days Beforeโ resumes the contact on November 19 at 00:00. To send at 8:00 the day before, use 16 Hours Before the date. - The date is read when the contact reaches the step. Changing the custom field later does not move a pause that has already started.
- If the trigger already provides a value with the same name as Date field key, MailerPress uses that value instead of the contact’s custom field.
When the date is in the past or missing
If the calculated date has already passed, or the contact has no value in the custom field, If date is in the past decides what happens:
- Skip and continue: the contact moves to the next step right away.
- Stop the workflow: the contact leaves the automation, and the run counts as failed in the statistics.
A value that isn’t a valid date (for example plain text) always stops the run. Choose Stop the workflow when a late or missing date would make the next email wrong, for example a reminder for an event that is already over.
Birthdays and yearly anniversaries
Wait Until Date uses the full date, year included. A birth date is always in the past, so it doesn’t work for yearly messages. Use the Birthday Check (Daily) trigger instead:
- Select the date custom field in Birthday Field.
- Once a day, MailerPress starts the automation for contacts whose day and month match today, at most once a year per contact.
The Birthday Campaign pre-made workflow is a ready-to-use starting point. Keep Wait Until Date for dates in the future: an event, an appointment, a trial end or a renewal.
Load post data into the automation
Add a Load Post Data step with Add Step, then configure it:
| Setting | Description |
|---|---|
| Where to find the post | Specific post (enter ID), Stored on the contact (custom field) or Passed by the trigger automatically. |
| Post ID | The ID of the post or page, visible in its edit URL (for example post=42). |
| Custom field name | The key of the contact custom field that contains the post ID, for example event_post_id. |
| Context variable | The trigger variable that contains the post ID. Default: post_id, provided for example by Comment Posted and Post Published. |
| Tag prefix | Optional text added in front of every loaded merge tag. With event_, the title becomes {{event_post_title}}. |
| Specific fields only | Comma-separated custom field names to load, for example zoom_link, location. Leave empty to load all public custom fields. |
The step loads these merge tags (placeholders replaced by the real value when the email is sent), shown here without prefix:
{{post_title}},{{post_url}},{{post_date}}and{{post_excerpt}}.{{post_thumbnail}}: the URL of the featured image, when the post has one.- One tag per custom field of the post, named after the field in lowercase, for example
{{zoom_link}}. Only fields containing text or numbers are loaded. Hidden fields (names starting with an underscore) are not.
If no post ID is found or the post doesn’t exist, the automation skips this step and continues.
Use the loaded data in your emails
- Type the merge tags in the email content or in the Subject * field of the Send Email step, for example โYour access link: {{event_zoom_link}}โ.
- Place Load Post Data just before the Send Email step that uses it, after any Wait or Wait Until Date step. Data loaded before a pause is not kept, so add a new Load Post Data step after each pause.
- If a contact custom field has the same name as a loaded tag, the contact’s value wins. Use a Tag prefix to avoid this.
Example: an event reminder journey
Your contacts have an event_date custom field (Date) and an event_post_id custom field (Number) that points to the event page. The event page has zoom_link and location custom fields.
- Trigger: List Added, with your event list selected in List.
- Load Post Data: Stored on the contact (custom field), Custom field name
event_post_id, Tag prefixevent_. - Send Email: a confirmation that uses
{{event_post_title}},{{event_location}}and{{event_post_url}}. - Wait Until Date: Contact custom field, Date field key
event_date, Offset 1 Days Before the date, If date is in the past set to Stop the workflow. - Load Post Data again, with the same settings, to reload the event details after the pause.
- Send Email: the reminder, with
{{event_zoom_link}}.
To send a thank-you message after the event, add a second Wait Until Date set to 1 day After the date, followed by a Send Email step. For every other step and trigger, see the automation reference.