1 The `meta` directive is supplied by the [[!iki plugins/meta desc=meta]] plugin.
3 This directive allows inserting arbitrary metadata into the source of a page.
4 Enter the metadata as follows:
6 \[[!meta field="value"]]
7 \[[!meta field="value" param="value" param="value"]]
9 The first form sets a given field to a given value, while the second form
10 also specifies some additional sub-parameters. You can have only one field
11 per `meta` directive, use more directives if you want to specify more fields.
13 The field values are treated as HTML entity-escaped text, so you can include
14 a quote in the text by writing `"` and so on.
20 Overrides the title of the page, which is generally the same as the
23 Note that if the title is overridden, a "title_overridden" variable will
24 be set to a true value in the template; this can be used to format things
25 differently in this case.
27 An optional `sortas` parameter will be used preferentially when
28 [[ikiwiki/pagespec/sorting]] by `meta(title)`:
30 \[[!meta title="The Beatles" sortas="Beatles, The"]]
32 \[[!meta title="David Bowie" sortas="Bowie, David"]]
36 Specifies a license for the page, for example, "GPL". Can contain
37 WikiLinks and arbitrary markup.
41 Specifies the copyright of the page, for example, "Copyright 2007 by
42 Joey Hess". Can contain WikiLinks and arbitrary markup.
46 Specifies the author of a page.
48 An optional `sortas` parameter will be used preferentially when
49 [[ikiwiki/pagespec/sorting]] by `meta(author)`:
51 \[[!meta author="Joey Hess" sortas="Hess, Joey"]]
55 Specifies an url for the author of a page.
59 Specifies a short description for the page. This will be put in
60 the html header, and can also be displayed by eg, the [[map]] directive.
64 Specifies a permanent link to the page, if different than the page
69 Specifies the creation date of the page. The date can be entered in
70 nearly any format, since it's parsed by [[!cpan TimeDate]].
74 Adds a stylesheet to a page. The stylesheet is treated as a wiki link to
75 a `.css` file in the wiki, so it cannot be used to add links to external
78 \[[!meta stylesheet=somestyle rel="alternate stylesheet"
83 Adds html <link> tags to perform OpenID delegation to an external
84 OpenID server. This lets you use an ikiwiki page as your OpenID.
86 By default this will delegate for both `openid` and `openid2`. To only
87 delegate for one, add a parameter such as `delegate=openid`.
89 An optional `xrds-location`
90 parameter lets you specify the location of any [eXtensible Resource
91 DescriptorS](http://www.windley.com/archives/2007/05/using_xrds.shtml).
95 \[[!meta openid="http://joeyh.myopenid.com/"
96 server="http://www.myopenid.com/server"
97 xrds-location="http://www.myopenid.com/xrds?username=joeyh.myopenid.com""]]
101 Specifies a link to another page. This can be used as a way to make the
102 wiki treat one page as linking to another without displaying a user-visible
103 [[ikiwiki/WikiLink]]:
105 \[[!meta link=otherpage]]
107 It can also be used to insert a html <link> tag. For example:
109 \[[!meta link="http://joeyh.myopenid.com/" rel="openid.delegate"]]
111 However, this latter syntax won't be allowed if the
112 [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to
113 insert unsafe content.
117 Causes the page to redirect to another page in the wiki.
119 \[[!meta redir=otherpage]]
121 Optionally, a delay (in seconds) can be specified. The default is to
122 redirect without delay.
124 It can also be used to redirect to an external url. For example:
126 \[[!meta redir="http://example.com/"]]
128 However, this latter syntax won't be allowed if the
129 [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to
130 insert unsafe content.
132 For both cases, an anchor to jump to inside the destination page may also be
133 specified using the common `#ANCHOR` syntax.
137 Causes the robots meta tag to be written:
139 \[[!meta robots="index, nofollow"]]
141 Valid values for the attribute are: "index", "noindex", "follow", and
142 "nofollow". Multiple comma-separated values are allowed, but obviously only
143 some combinations make sense. If there is no robots meta tag, "index,
144 follow" is used as the default.
146 The value is escaped, but its contents are not otherwise checked.
150 Specifies a globally unique ID for a page. This guid should be a URI
151 (in particular, it can be `urn:uuid:` followed by a UUID, as per
152 [[!rfc 4122]]), and it will be used to identify the page's entry in RSS
153 and Atom feeds. If not given, the default is to use the page's URL as its
156 This is mostly useful when a page has moved, to keep the guids for
157 pages unchanged and avoid_flooding_aggregators
158 (see [[!iki tips/howto_avoid_flooding_aggregators]]).
162 Specifies a fake modification time for a page, to be output into RSS and
163 Atom feeds. This is useful to avoid flooding aggregators that sort by
164 modification time, like Planet: for instance, when editing an old blog post
165 to add tags, you could set `updated` to be one second later than the original
166 value. The date/time can be given in any format that
167 [[!cpan TimeDate]] can understand, just like the `date` field.
169 If the field is not one of the above predefined fields, the metadata will be
170 written to the generated html page as a <meta> header. However, this
171 won't be allowed if the [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled,
172 since it can be used to insert unsafe content.
174 [[!meta robots="noindex, follow"]]