- Pick one of the existing Calendar Plugins and extend it to connect to a CalDav Server
- Write a Calendar Plugin from scratch that connects to a CalDav Server and also does all the rest I would like to have (Full Calendar, Sidebar Widget, Events List...)
- Write a Plugin that would create one of the common Calendar Format Files and use that with an existing Calendar Plugin.
In fact, with approach #3, anyone having a personal CalDav Calendar Resource available can then just use any of the numerous Calendar Plugins out there that are able to directly use .ics files, install this Plugin in Addition and then point the Calendar Plugin of choice to the .ics file generated automatically at the desired Time Schedule.
So what would be the steps to achieve the desired goal ?
- Create a comprehensive Plugin Skeleton, which would be easily extendible
- Setting up an easy to use Admin Page for the CalDav Server URL, Credentials etc.
- Schedule the Process of connecting to the Server and creating a Calendar Data File from there via WP Cron
- Implement the actual Action: creating the Calendar Data File
And now, after some fiddling around and debugging, the Plugin is in a state that worksforme 😊 - no more, no less, but I also felt there might be someone out there who would also benefit from such a thing, so I decided to already make it publicly available - in a first step, on my persononal Website - anyone interested can download it from Github (see End of Article).
But be warned: USE AT YOUR OWN RISK !
(Should not be too risky, though, as there isn’t anywhere a functionality which could compromise/delete any valuable data, especially calendars etc… - the risk is mainly, that it just might not work)
Currently, I’m trying to figure out what still has to be done to make this available to a bigger audience by publishing it in the Wordpress Plugin Directory, which is my intention - I’m pretty sure someone else can use it too… So, what is left to be done before publishing to WP Dir:
- be sure everthing works as expected
- Check for (more) possible missing/faulty Settings and warn User, if any of these found
- Check out the WP Plugin Developer Docs to ensure all requirements are met
- Check the WP Coding Style Standards and correct any (big) faults in the Plugin Code
- create some comprehensive Icon(s)/Logo(s) for the Plugin
- Prepare for Internationalisation and provide at least a german Translation
Update (17.11.2018):
The Plugin has now been checked by the WP Staff, and, after some back-and forth (mainly due to using plain curl instead of the WP http API), accepted - check it out here .
Update (19.02.2019):
Version 1.1.0 is out - a major Improvement: this can now handle more than one CalDav Calendar at once ! This feature has been asked for in the WP Support forum, but to be honest, I had thought about that already before 😊 . Additionally, the Development Version is now always available at GitGub - be sure to check the File readme.txt there if you want to try that !