I would like to be able to apply custom emails to an entire category of events, rather than a single event at a time. Is there a way I can do this, whether it’s via add-on, or custom code, or anything? Thanks for your help.
There’s a couple of ways you can do this and whilst it’s not something we can support and can help point you in the right direction.
(Note – both of these options require custom code as we don’t have anything in core that can do it for you)
Option 1 – Hook into the function used to generate the email data and set the send_email and email_id property of the event on the fly.
There’s a within EE3 ‘fired’ just after EE has prepped all of the data it will use for the email which is filter_hook_espresso_post_prepare_email_data.
So you could hook into that, pull the event ID from $data and find the event category. If that matches the category in question set the send_email and email_id properly.
Take a look in \event-espresso\includes\functions\email.php line 328 for the filter and it you step through the data above it shows a similar setup.
This is the easiest option but adds an additional query to each and every email as it needs to check the category each time.
Option 2 – Update the event’s within the database to use custom email.
Within each event record there is a send_email and email_id field. Setting send_email to ‘Y’ and then the email_id field to the ID of the email you want to send for that event will tell EE which email to use.
So if this is a one time update you could write some custom code to pull all of the events in said category, loop over each and update the 2 fields above. Depending on the number of events this may need to be done in batches.
This is a little more involved but you only need to run the query to update the events once, not every time an email is generated.
Viewing 1 reply thread
The support post ‘Assigning custom email at category level’ is closed to new replies.
Have a question about this support post? Create a new support post in our support forums and include a link to this existing support post so we can help you.
Support forum for Event Espresso 3 and Event Espresso 4.