X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/9921a4a8a1a696ce69acce5e14943f0149d926ff..a42bbcb875aeb1e6715842cdb926952e18a3e439:/doc/ikiwiki/directive/meta.mdwn diff --git a/doc/ikiwiki/directive/meta.mdwn b/doc/ikiwiki/directive/meta.mdwn index b01dbfe76..6b381f138 100644 --- a/doc/ikiwiki/directive/meta.mdwn +++ b/doc/ikiwiki/directive/meta.mdwn @@ -1,13 +1,14 @@ -The `meta` directive is supplied by the [[!iki plugins/meta]] plugin. +The `meta` directive is supplied by the [[!iki plugins/meta desc=meta]] plugin. -This plugin allows inserting arbitrary metadata into the source of a page. +This directive allows inserting arbitrary metadata into the source of a page. Enter the metadata as follows: \[[!meta field="value"]] \[[!meta field="value" param="value" param="value"]] The first form sets a given field to a given value, while the second form -also specifies some additional sub-parameters. +also specifies some additional sub-parameters. You can have only one field +per `meta` directive, use more directives if you want to specify more fields. The field values are treated as HTML entity-escaped text, so you can include a quote in the text by writing `"` and so on. @@ -23,6 +24,13 @@ Supported fields: be set to a true value in the template; this can be used to format things differently in this case. + An optional `sortas` parameter will be used preferentially when + [[ikiwiki/pagespec/sorting]] by `meta(title)`: + + \[[!meta title="The Beatles" sortas="Beatles, The"]] + + \[[!meta title="David Bowie" sortas="Bowie, David"]] + * license Specifies a license for the page, for example, "GPL". Can contain @@ -37,14 +45,19 @@ Supported fields: Specifies the author of a page. + An optional `sortas` parameter will be used preferentially when + [[ikiwiki/pagespec/sorting]] by `meta(author)`: + + \[[!meta author="Joey Hess" sortas="Hess, Joey"]] + * authorurl Specifies an url for the author of a page. * description - Specifies a "description" of the page. You could use this to provide - a summary, for example, to be picked up by the [[map]] plugin. + Specifies a short description for the page. This will be put in + the html header, and can also be displayed by eg, the [[map]] directive. * permalink @@ -64,17 +77,37 @@ Supported fields: \[[!meta stylesheet=somestyle rel="alternate stylesheet" title="somestyle"]] + + However, this will be scrubbed away if the + [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, + since it can be used to insert unsafe content. + +* script + + Adds a script to a page. The script is treated as a wiki link to + a `.js` file in the wiki, so it cannot be used to add links to external + scripts. The optional `defer` and `async` keywords can be used to set + the corresponding HTML4 and HTML5 script options. Example: + + \[[!meta script=somescript defer async]] + + The tag is subject to scrubbing as with the stylesheet and link fields. * openid Adds html <link> tags to perform OpenID delegation to an external - OpenID server (for `openid` and `openid2`). An optional `xrds-location` + OpenID server. This lets you use an ikiwiki page as your OpenID. + + By default this will delegate for both `openid` and `openid2`. To only + delegate for one, add a parameter such as `delegate=openid`. + + An optional `xrds-location` parameter lets you specify the location of any [eXtensible Resource DescriptorS](http://www.windley.com/archives/2007/05/using_xrds.shtml). - This lets you use an ikiwiki page as your OpenID. Example: + Example: - \\[[!meta openid="http://joeyh.myopenid.com/" + \[[!meta openid="http://joeyh.myopenid.com/" server="http://www.myopenid.com/server" xrds-location="http://www.myopenid.com/xrds?username=joeyh.myopenid.com""]] @@ -91,7 +124,7 @@ Supported fields: \[[!meta link="http://joeyh.myopenid.com/" rel="openid.delegate"]] However, this latter syntax won't be allowed if the - [[!iki plugins/htmlscrubber]] plugin is enabled, since it can be used to + [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to insert unsafe content. * redir @@ -108,7 +141,7 @@ Supported fields: \[[!meta redir="http://example.com/"]] However, this latter syntax won't be allowed if the - [[!iki plugins/htmlscrubber]] plugin is enabled, since it can be used to + [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to insert unsafe content. For both cases, an anchor to jump to inside the destination page may also be @@ -125,9 +158,7 @@ Supported fields: some combinations make sense. If there is no robots meta tag, "index, follow" is used as the default. - The plugin escapes the value, but otherwise does not care about its - contents. In particular, it does not check the values against the set of - valid values but serves whatever you pass it. + The value is escaped, but its contents are not otherwise checked. * guid @@ -141,9 +172,27 @@ Supported fields: pages unchanged and avoid_flooding_aggregators (see [[!iki tips/howto_avoid_flooding_aggregators]]). +* updated + + Specifies a fake modification time for a page, to be output into RSS and + Atom feeds. This is useful to avoid flooding aggregators that sort by + modification time, like Planet: for instance, when editing an old blog post + to add tags, you could set `updated` to be one second later than the original + value. The date/time can be given in any format that + [[!cpan TimeDate]] can understand, just like the `date` field. + +* foaf + + Adds a Friend of a Friend ([FOAF](http://wiki.foaf-project.org/w/Autodiscovery)) + reference to a page. + + Example: + + \[[!meta foaf=foaf.rdf]] + If the field is not one of the above predefined fields, the metadata will be written to the generated html page as a <meta> header. However, this -won't be allowed if the [[!iki plugins/htmlscrubber]] plugin is enabled, +won't be allowed if the [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to insert unsafe content. [[!meta robots="noindex, follow"]]