From 3f28c5ce26164d08eb3fc52da749e000f2ac5ccd Mon Sep 17 00:00:00 2001 From: zweistein Date: Sat, 7 Mar 2020 13:57:55 +0000 Subject: aktiv? --- ikiwiki/directive/meta.mdwn | 239 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 239 insertions(+) create mode 100644 ikiwiki/directive/meta.mdwn (limited to 'ikiwiki') diff --git a/ikiwiki/directive/meta.mdwn b/ikiwiki/directive/meta.mdwn new file mode 100644 index 00000000..8acf2a48 --- /dev/null +++ b/ikiwiki/directive/meta.mdwn @@ -0,0 +1,239 @@ +[[!if test="enabled(meta)" + then="In diesem Wiki ist die Direktive: meta **aktiviert**." + else="In diesem Wiki ist die Direktive: meta **nicht aktiv**; falls dies gewünscht wird, den Admin benachrichtigen."]] + +--- +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: + + \[[!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 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. + +## Supported fields + +* title + + Overrides the title of the page, which is generally the same as the + page name. + + Note that if the title is overridden, a "title_overridden" variable will + 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 + 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. + + 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 short description for the page. This will be put in + the html header, and can also be displayed by eg, the [[map]] directive. + +* keywords + + Specifies keywords summarizing the contents of the page. This + information will be put in the html header. Only letters, + numbers, spaces and commas are allowed in this string; other + characters are stripped. Note that the majority of search + engines, including Google, do not use information from the + keywords header. + +* permalink + + Specifies a permanent link to the page, if different than the page + generated by ikiwiki. + +* date + + Specifies the creation date of the page. This creates a + `` header in the HTML output, but also + modifies the internal `ctime` in the + [[!iki tips/inside_dot_ikiwiki desc="internal index"]]. + The date can be entered in nearly any format, since it's parsed by + [[!cpan TimeDate]] but invalid dates yield an error in 3.20180321 + or later. + +* 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"]] + + 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. 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). + + 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 + [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, since it can be used to + insert unsafe content. + +* enclosure + + Specifies a link to a file to be rendered as an "enclosure" in + RSS/Atom feeds (and a plain old link in HTML). Useful for + [[!iki podcast desc=podcasting]]. + +* redir + + Causes the page to redirect to another page in the wiki. + + \[[!meta redir=otherpage]] + + The default is to redirect without delay. + Optionally, a delay (in seconds) can be specified: "delay=10" + + 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 + [[!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 + specified using the common `#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 value is escaped, but its contents are not otherwise checked. + +* guid + + Specifies a globally unique ID for a page. This guid should be a URI, + 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 + (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 and maps to the + `` HTML header and internal `mtime` 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]] + +* name + + Adds a HTML `` header with this `name` attribute. Its other attributes are + taken from the other parameters, so for example + `\[[!meta name="foo" content="bar" x-non-standard-attribute="baz"]]` + becomes ``. This + won't be allowed if the [[!iki plugins/htmlscrubber desc=htmlscrubber]] plugin is enabled, + since it can be used to insert unsafe content. + +## Other fields + +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. For example, +`\[[!meta foo="bar"]]` becomes ``. As +with `name`, this won't be allowed if the [[!iki plugins/htmlscrubber +desc=htmlscrubber]] plugin is enabled. + +This syntax cannot be used for meta headers with unusual names, in +particular names containing `:` such as `flattr:id` and `twitter:card`. +Please use `\[[!meta name="..." content="..."]]` for those headers. + +[[!meta robots="noindex, follow"]] -- cgit v1.2.1