ical-events 1.7

Thanks to some very helpful users, a new version of the ical-events plugin is available. It contains mostly minor updates to the iCalendar parser, a fix for all-day events (thanks, Jennie!), and a fix for repeating events (thanks, Pete!).

As usual, you can download a zip file from Owen Winkler’s site.


Comment from gareth on

Is there any chance that you will make this a widget? I’ve tried the plugin using Google Calendar (synched to outlook) and it’s great – but I’d like to have events on my sidebar. I’ve tried a quick hack to get it to work, but I think it needs more considered thought – esp from someone who already understands the code!

Comment from dwc on


I haven’t looked at the WordPress widget stuff yet.

The plugin is still usable in your sidebar, though, if you add it to your theme’s sidebar.php file.

Comment from philsn on

I haven’t figured it out yet but I guess you can only use one iCal source with your plugin, right? I have my personal stuff and birthdays for instance in two different google calendars but I want to see the events of both in the right chronological order. Is there any chance to achieve this with ical-events?

Comment from dwc on


You’ll have to write a custom display plugin. For example:

Plugin Name: My iCal Events
function my_ical_events_display($urls = array(), $gmt_start, $gmt_end, $limit) {
    $all_events = array();
    foreach ($urls as $url) {
        $events = ICalEvents::get_events($url, $gmt_start, $gmt_end, $limit);
        array_push($all_events, $events);
    $all_events = ICalEvents::sort_by_key($all_events, 'StartTime');
    $output = '';
    foreach ($events as $event) {
        /* Custom view code here */
    return $output;

Comment from philsn on

I’ll give it a try. Thank you for your effort.

Comment from Dan on

If I only want to show events for one day on my calendar, I’m assuming I use the gmt_start, gmt_end values, but I’m not sure what to enter. For example, I want to show only events that take place from 6am on 3/28/2011 to 11pm. What do I put in the code? Thanks!!