]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/ikiwiki/directive/meta.mdwn
oops
[git.ikiwiki.info.git] / doc / ikiwiki / directive / meta.mdwn
index bbf020c3e5306e5be4b5ae82035561b0e7cf925d..6b381f138b0fbbd666ea37b20e0dbe5860e7348a 100644 (file)
@@ -1,4 +1,4 @@
-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 directive allows inserting arbitrary metadata into the source of a page.
 Enter the metadata as follows:
 
 This directive allows inserting arbitrary metadata into the source of a page.
 Enter the metadata as follows:
@@ -7,7 +7,8 @@ Enter the metadata as follows:
        \[[!meta field="value" param="value" param="value"]]
 
 The first form sets a given field to a given value, while the second form
        \[[!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.
 
 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.
 
   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
 * license
 
   Specifies a license for the page, for example, "GPL". Can contain
@@ -37,14 +45,19 @@ Supported fields:
 
   Specifies the author of a page.
 
 
   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
 
 * 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]] directive.
+  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
 
 
 * permalink
 
@@ -64,17 +77,37 @@ Supported fields:
 
        \[[!meta stylesheet=somestyle rel="alternate stylesheet"
        title="somestyle"]]
 
        \[[!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
 
   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).
 
   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""]]
 
        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 
        \[[!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
   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 
        \[[!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
   insert unsafe content.
 
   For both cases, an anchor to jump to inside the destination page may also be
@@ -139,9 +172,27 @@ Supported fields:
   pages unchanged and avoid_flooding_aggregators
   (see [[!iki tips/howto_avoid_flooding_aggregators]]).
 
   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
 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"]]
 since it can be used to insert unsafe content.
 
 [[!meta robots="noindex, follow"]]