DragonFly BSD


The calendar directive is supplied by the calendar plugin.

This directive displays a calendar, similar to the typical calendars shown on some blogs.


[[!calendar  ]]

[[!calendar  type="month" pages="blog/* and !*/Discussion"]]

[[!calendar  type="year" year="2005" pages="blog/* and !*/Discussion"]]


The calendar is essentially a fancy front end to archives of previous pages, usually used for blogs. It can produce a calendar for a given month, or a list of months for a given year. The month format calendar simply links to any page posted on each day of the month. The year format calendar links to archive pages, with names like archives/2007 (for all of 2007) and archives/2007/01 (for January, 2007).

While you can insert calendar directives anywhere on your wiki, including in the sidebar, you'll also need to create these archive pages. They typically use this directive to display a calendar, and also use inline to display or list pages created in the given time frame.

Generating archive pages

If option calendar_autocreate is not set, the ikiwiki-calendar command can be used to automatically generate the archive pages. It also refreshes the wiki, updating the calendars to highlight the current day. This command is typically run at midnight from cron.

An example crontab:

0 0 * * * ikiwiki-calendar ~/ikiwiki.setup "posts/* and !*/Discussion"

With setup option calendar_autocreate, all this work is done by ikiwiki itself. Thus, the crontab command can be replaced by:

0 0 * * * ikiwiki --setup ~/ikiwiki.setup --refresh