X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/479c7a1ea62d8fce3ef54f9deae89230d0b52a5d..8d9ec24232ede981face0c3eafbce71b74c4725a:/doc/plugins/meta.mdwn?ds=inline diff --git a/doc/plugins/meta.mdwn b/doc/plugins/meta.mdwn index 41563e965..506ac84a8 100644 --- a/doc/plugins/meta.mdwn +++ b/doc/plugins/meta.mdwn @@ -1,30 +1,19 @@ -[[template id=plugin name=meta included=1 author="[[Joey]]"]] +[[template id=plugin name=meta author="[[Joey]]"]] [[tag type/meta]] This plugin 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"]] + \[[!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. -You can use any field names you like, but here are some predefined ones: - -* link - - Specifies a link to another page. This is used to generate a html - <link> tag, and also as a way to make the wiki treat one page as - linking to another without displaying a user-visible link. The latter - can be useful when using links to categorise pages. A html link tag - would look like this: - - \[[meta link="foo.css" rel="stylesheet" type="text/css"]] - - A non-user-visible [[WikiLink]] would instead look like this: +The field values are treated as HTML entity-escaped text, so you can include +a quote in the text by writing `"` and so on. - \[[meta link=otherpage]] +Supported fields: * title @@ -37,20 +26,116 @@ You can use any field names you like, but here are some predefined ones: * license - Specifies a copyright license for the page, for example, "GPL". + Specifies a license for the page, for example, "GPL". Can contain + WikiLinks and arbitrary markup. + +* copyright + + Specifies the copyright of the page, for example, "Copyright 2007 by + Joey Hess". Can contain WikiLinks and arbitrary markup. * author Specifies the author of a page. +* authorurl + + Specifies an url for the author of a page. + * permalink Specifies a permanent link to the page, if different than the page generated by ikiwiki. -If the field is not treated specially (as the link and title fields are), -the metadata will be written to the generated html page as a <meta> -header. +* date -The field value is treated as HTML entity-escaped text, so you can include -a quote in the text by writing `"` and so on. + Specifies the creation date of the page. The date can be entered in + nearly any format, since it's parsed by [[cpan TimeDate]]. + +* stylesheet + + Adds a stylesheet to a page. The stylesheet is treated as a wiki link to + a `.css` file in the wiki, so it cannot be used to add links to external + stylesheets. Example: + + \[[!meta stylesheet=somestyle rel="alternate stylesheet" + title="somestyle"]] + +* openid + + Adds html <link> tags to perform OpenID delegation to an external + OpenID server (for `openid` and `openid2`). 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: + + \\[[!meta openid="http://joeyh.myopenid.com/" + server="http://www.myopenid.com/server" + xrds-location="http://www.myopenid.com/xrds?username=joeyh.myopenid.com""]] + +* link + + Specifies a link to another page. This can be used as a way to make the + wiki treat one page as linking to another without displaying a user-visible + [[ikiwiki/WikiLink]]: + + \[[!meta link=otherpage]] + + It can also be used to insert a html <link> tag. For example: + + \[[!meta link="http://joeyh.myopenid.com/" rel="openid.delegate"]] + + However, this latter syntax won't be allowed if the [[htmlscrubber]] is + enabled, since it can be used to insert unsafe content. + +* redir + + Causes the page to redirect to another page in the wiki. + + \[[!meta redir=otherpage]] + + Optionally, a delay (in seconds) can be specified. The default is to + redirect without delay. + + It can also be used to redirect to an external url. For example: + + \[[!meta redir="http://example.com/"]] + + However, this latter syntax won't be allowed if the [[htmlscrubber]] 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 + specified using the common `PAGE#ANCHOR` syntax. + +* robots + + Causes the robots meta tag to be written: + + \[[!meta robots="index, nofollow"]] + + Valid values for the attribute are: "index", "noindex", "follow", and + "nofollow". Multiple comma-separated values are allowed, but obviously only + 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. + +* guid + + Specifies a globally unique ID for a page. This guid should be a URI + (in particular, it can be `urn:uuid:` followed by a UUID, as per + [[!rfc 4122]]), and it will be used to identify the page's entry in RSS + and Atom feeds. If not given, the default is to use the page's URL as its + guid. + + This is mostly useful when a page has moved, to keep the guids for + pages unchanged and + [[avoid_flooding_aggregators|tips/howto_avoid_flooding_aggregators]]. + +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 [[htmlscrubber]] is enabled, since it can be used to +insert unsafe content.