The objective here is to create a function will generate unique ‘Add to Calendar’ ics files for download by the user. To do this we will use a third-party service AddEvent https://www.addevent.com/api. You can see an example of how they make it work at https://www.addevent.com/.
For our events we want to append the registrants email address to the URL to make sure they are registered, which means every add-to-calendar file has a unique text in the location (the url) and content area.
So here is the registrant workflow:
- An individual registers for an event on our site.
- They are presented with a confirmation page with an ‘Add to Calendar Link”.
- They are sent a confirmation email with an ‘Add to Calendar Link”
- Later they are sent a reminder email (not from WordPress) with an ‘Add to Calendar’ link.
- On the emails (both confirmation and reminder) when you click the ‘Add to Calendar’ link it will take you to a page on our site with the ‘add to Calendar’ widget embedded.
Here is the admin experience. After activating our plugin they would
- Create a new event defining date/time/duration/title/location/description/reminders/organizer (default option)/organizer email (default option)/timezone/alarm.
- Generates a unique event id
- Use shortcode to embed the widget into any page/post on site.
- Any link to that page would “Get” the parameters event id and email address. It would use this to display the correct event details and unique link.
- The widget would look something similar to this output: https://www.addevent.com/event/?db52444 and must be responsive.
What problems do you see with this implementation?
Question: In my use case I have all links go to a page on our site, then you download the file. In their example at https://www.addevent.com/ it looks like you can embed these into email. Could we do that? Still thinking through if it is desired, but probably a better user experience.