]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/meta.mdwn
releasing version 2.56
[git.ikiwiki.info.git] / doc / plugins / meta.mdwn
index cebe11f56bfa8d27dfe5d56dc970f040d2a8d646..599d9cbd84e2c718f877701861ad92df15f8954e 100644 (file)
@@ -1,11 +1,11 @@
-[[template id=plugin name=meta author="[[Joey]]"]]
-[[tag type/meta]]
+[[!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.
@@ -13,22 +13,7 @@ also specifies some additional sub-parameters.
 The field values are treated as HTML entity-escaped text, so you can include
 a quote in the text by writing `"` and so on.
 
-You can use any field names you like, but here are some predefined ones:
-
-* 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
-  [[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.
+Supported fields:
 
 * title
 
@@ -41,12 +26,27 @@ 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.
+
+* 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.
+
 * permalink
 
   Specifies a permanent link to the page, if different than the page
@@ -55,7 +55,7 @@ You can use any field names you like, but here are some predefined ones:
 * date
 
   Specifies the creation date of the page. The date can be entered in
-  nearly any format, since it's parsed by [[cpan TimeDate]].
+  nearly any format, since it's parsed by [[!cpan TimeDate]].
 
 * stylesheet
 
@@ -63,16 +63,82 @@ You can use any field names you like, but here are some predefined ones:
   a `.css` file in the wiki, so it cannot be used to add links to external
   stylesheets. Example:
 
-       \[[meta stylesheet=somestyle rel="alternate stylesheet"
+       \[[!meta stylesheet=somestyle rel="alternate stylesheet"
        title="somestyle"]]
 
 * openid
 
   Adds html <link> tags to perform OpenID delegation to an external
-  OpenID server. This lets you use an ikiwiki page as your OpenID. Example:
+  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.
 
-       \\[[meta openid="http://joeyh.myopenid.com/"
-       server="http://www.myopenid.com/server"]]
+  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