DokuWiki

It's better when it's simple

User Tools

Site Tools


devel:event:tpl_metaheader_output

This is an old revision of the document!


TPL_METAHEADER_OUTPUT

Description:
Manipulate meta headers
DefaultAction:
Sends the meta headers to the browser
Preventable:
yes
Added:
2006-09-16

This event is signalled by tpl_metaheaders() in inc/template.php after preparing the default meta headers. You can use it to manipulate the meta headers before they're sent to the browser.

Passed Data

$data is a two-dimensional array of all meta headers. The keys are meta, link and script.

Here is an example for using the data property to add meta information, stylesheets and JavaScript

// Adding a meta value
$event->data["meta"][] = array (
  "name" => "DC.Subject",
  "content" => "Some information",
);
 
// Adding a stylesheet 
$event->data["link"][] = array (
  "type" => "text/css",
  "rel" => "stylesheet", 
  "href" => DOKU_BASE."lib/plugins/myplugin/specialstyle.css",
);
 
// Adding a JavaScript File
$event->data["script"][] = array (
  "type" => "text/javascript",
  "src" => DOKU_BASE."lib/plugins/myplugin/javascript_library.js",
  "_data" => "",
);
 
// Adding JavaScript Code
$event->data["script"][] = array (
  "type" => "text/javascript",
  "charset" => "utf-8",
  "_data" => "addInitEvent(function(){comments_addButtons('$ID');});",
);

Note:

  • When you are adding the stylesheet or javascript file for compatibility with using slash as namespace separator in URLs you should prepend the file link with DOKU_BASE.
  • For adding the javascript file you should specify an empty “_data” field for generating of a closing “script” tag, otherwise you get an incorrect self closed “script” tag.

Plugins handling this event

The following plugins are known to handle this event and their source code may be a good start for understanding and implementing a handler yourself.

See also

devel/event/tpl_metaheader_output.1239724796.txt.gz · Last modified: 2009-09-11 19:23 (external edit)

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki