Fix broken links in the basewiki
[ikiwiki.git] / doc / ikiwiki / directive / calendar.mdwn
1 The `calendar` directive is supplied by the [[!iki plugins/calendar desc=calendar]] plugin.
2
3 This directive displays a calendar, similar to the typical calendars shown on
4 some blogs.
5
6 # examples
7
8         \[[!calendar ]]
9
10         \[[!calendar type="month" pages="blog/* and !*/Discussion"]]
11
12         \[[!calendar type="year" year="2005" pages="blog/* and !*/Discussion"]]
13
14 ## setup
15
16 The calendar is essentially a fancy front end to archives of previous
17 pages, usually used for blogs. It can produce a calendar for a given month,
18 or a list of months for a given year. The month format calendar simply
19 links to any page posted on each day of the month. The year format calendar
20 links to archive pages, with names like `archives/2007` (for all of 2007)
21 and `archives/2007/01` (for January, 2007).
22
23 While you can insert calendar directives anywhere on your wiki, including
24 in the sidebar, you'll also need to create these archive pages. They
25 typically use this directive to display a calendar, and also use [[inline]]
26 to display or list pages created in the given time frame.
27
28 ## Generating archive pages
29
30 If [[!iki plugins/calendar desc=option]] `calendar_autocreate` is not set, the
31 [[!iki ikiwiki-calendar]] command can be used to automatically generate the archive
32 pages. It also refreshes the wiki, updating the calendars to highlight the
33 current day. This command is typically run at midnight from cron.
34
35 An example crontab:
36
37     0 0 * * * ikiwiki-calendar ~/ikiwiki.setup "posts/* and !*/Discussion"
38
39
40 With [[!iki plugins/calendar desc="setup option"]] `calendar_autocreate`,
41 all this work is done by `ikiwiki` itself. Thus, the crontab command can be
42 replaced by:
43
44     0 0 * * * ikiwiki --setup ~/ikiwiki.setup --refresh
45
46 ## usage
47
48 * `type` - Used to specify the type of calendar wanted. Can be one of
49   "month" or "year". The default is a month view calendar.
50 * `pages` - Specifies the [[ikiwiki/PageSpec]] of pages to link to from the
51   month calendar. Defaults to "*".
52 * `archivebase` - Configures the base of the archives hierarchy. 
53   The default is "archives". Note that this default can also be overridden
54   for the whole wiki by setting `archivebase` in ikiwiki's setup file.
55   Calendars link to pages under here, with names like "2010/04" and
56   "2010". These pages can be automatically created using the
57   `calendar_autocreate` [[!iki plugins/calendar desc="setup option"]].
58 * `year` - The year for which the calendar is requested. Defaults to the
59   current year. Can also use -1 to refer to last year, and so on.
60 * `month` - The numeric month for which the calendar is requested, in the
61   range 1..12. Used only for the month view calendar, and defaults to the
62   current month. Can also use -1 to refer to last month, and so on.
63 * `week_start_day` - A number, in the range 0..6, which represents the day
64   of the week that the month calendar starts with. 0 is Sunday, 1 is Monday,
65   and so on. Defaults to 0, which is Sunday.
66 * `months_per_row` - In the year calendar, number of months to place in
67   each row. Defaults to 3.
68
69 [[!meta robots="noindex, follow"]]