MarkupiCalendar by ffub

A module that acts as a wrapper for creating iCalendar feeds using the iCalcreator library.

Given a PageArray of pages, this module will render an iCalendar feed from them. This is intended to be used directly from a template file. See usage below.

The module uses the excellent iCalcreator library from for creating the ICS feed itself and as such mostly just acts as a simple wrapper.


$ics = $modules->get("MarkupiCalendar"); 
$ics->title = "Upcoming Events";
$ics->description = "Some upcoming events";
$ics->itemStartDateField = 'date';
$today = time();
$items = $pages->find("template=event, limit=30, sort=date, date>$today");

Runtime options

'title' => 'Untitled iCal Feed',
'url' => '',
'description' => '',
'itemSummaryField' => 'title',
'itemDescriptionField' => 'summary',
'itemLocationField' => false,
'itemStartDateField' => 'created',
'itemEndDateField' => false,
'feedPages' => array(),
'timezone' => false

Copyright (C) 2011 by Stephen Tomlinson
This module is licensed under Apache License v2.0, see LICENSE.TXT within the module folder.
The iCalcreator library is copyright (c) 2007-2011 Kjell-Inge Gustafsson and licensed under the LPGL.

Install and use modules at your own risk. Always have a site and database backup before installing new modules.

Twitter updates

  • Great video by @jlahijani that demonstrates his ProcessWire page builder using ProFields Repeater Matrix, the new Page Autosave + Live Preview module and Uikit 3—…
    13 November 2021
  • More development on page automatic save this week, plus the addition of live preview— More
    12 November 2021
  • ProcessWire 3.0.189 core updates— More
    5 November 2021

Latest news

  • ProcessWire Weekly #393
    In the 393rd issue of ProcessWire Weekly we'll cover the latest core and module updates, check out a brand new module called Anonymize fields, and highlight some recent tutorials and other online resources. Read on! / 20 November 2021
  • New Repeater and Repeater Matrix features
    This week we have some very useful new additions to both the core Repeater Fieldtype and the ProFields Repeater Matrix Fieldtype. This post covers all the details along with a couple of brief demonstration videos. 
    Blog / 22 October 2021
  • Subscribe to weekly ProcessWire news

“ProcessWire is like a breath of fresh air. So powerful yet simple to build with and customise, and web editors love it too.” —Margaret Chatwin, Web developer