Manual:Hooks/BeforePageDisplay
Appearance
From mediawiki.org
If you are adding JavaScript or CSS to the page please consider using OutputPageBeforeHTML so that your modules also get added to API responses.
| BeforePageDisplay | |
|---|---|
| Available from version 1.7.0 (r14420, CodeReview archive) Allows last minute changes to the output page, e.g. adding of CSS or JavaScript by extensions. | |
| Define function: | public static function onBeforePageDisplay( MediaWiki\Output\OutputPage $out, Skin $skin ) { ... } |
| Attach hook: | In extension.json:
{ "Hooks":{ "BeforePageDisplay":"MediaWiki\\Extension\\MyExtension\\Hooks::onBeforePageDisplay" } } |
| Called from: | File(s): Output/OutputPage.php Function(s): output |
| Interface: | BeforePageDisplayHook.php |
For more information about attaching hooks, see Manual:Hooks .
For examples of extensions using this hook, see Category:BeforePageDisplay extensions.
Details
[edit ]- This hook was in SkinTemplate.php until version 1.12.0
- $out - The OutputPage object.
- $skin - Skin object that will be used to generate the page, added in 1.13.
Usage
[edit ]Scripts, styles, and other header elements can be added to the OutputObject at this point.
$out->addMeta( $name, $value )- Add a<meta>tag.
MediaWiki version:
≥ 1.17
For adding scripts and styles on MediaWiki 1.17 and above, use ResourceLoader modules.
$out->addModules( [ /*modules*/ ] )- For modules with both scripts and styles$out->addModuleStyles( [ /*modules*/ ] )- For modules with styles only
MediaWiki version:
≤ 1.16
For adding scripts and styles on MediaWiki 1.16 and below:
$out->addScriptFile( $path )- Add a JS file. $path is the path to the JS file, such as$wgScriptPath /extensions/MyExtension/MyCoolScript.js$out->addScript( $html )- Add a JS file. $html is a full script tag:'<script type="text/javascript" src="..."></script>'$out->addStyle( $src )- Add a CSS file. $src is a URL to a stylesheet.$out->addInlineScript( $script )- Add inline JS.$out->addLink( $title, $id )- Add a link for the keyword<link>tag.