Jump to content

Manual:Hooks/BeforePageDisplay/cs

From mediawiki.org
BeforePageDisplay
Available from version 1.7.0 (r14420, codereview)
Umožňuje změny výstupní stránky na poslední chvíli, např. přidávání CSS nebo JavaScriptu pomocí rozšíření.
Define function:
public static function onBeforePageDisplay( OutputPage $out, Skin $skin ) { ... }
Attach hook: In extension.json:
{
	"Hooks": {
		"BeforePageDisplay": "MediaWiki\\Extension\\MyExtension\\Hooks::onBeforePageDisplay"
	}
}
Called from: File(s): OutputPage.php
Function(s): output
Interface: BeforePageDisplayHook.php

For more information about attaching hooks, see Příručka:Háčky .
For examples of extensions using this hook, see Category:BeforePageDisplay extensions/cs.

Podrobnosti

[edit]
  • Tento háček byl v SkinTemplate.php až do verze 1.12.0
  • $out - objekt OutputPage.
  • $skin - objekt vzhledu, který bude použit k vygenerování stránky, přidán v 1.13.

Použití

[edit]

V tomto okamžiku lze do OutputObject přidat skripty, styly a další prvky záhlaví.

  • $out->addMeta( $name, $value ) - přidá značku ‎<meta>.
  • $out->addKeyword( $text ) - přidá klíčové slovo pro značku klíčového slova ‎<meta>.
Verze MediaWiki:
1.17
a novější

Pro přidávání skriptů a stylů na MediaWiki 1.17 a vyšší použijte moduly ResourceLoader.

  • $out->addModules( [ /*moduly*/ ] ) - pro moduly se skripty i styly.
  • $out->addModuleStyles( [ /*moduly*/ ] ) - pouze pro moduly se styly.
Verze MediaWiki:
1.16
a starší

Pro přidávání skriptů a stylů na MediaWiki 1.16 a nižší:

  • $out->addScriptFile( $path ) - přidá soubor JS. $path je cesta k souboru JS, například $wgScriptPath /extensions/MyExtension/MyCoolScript.js.
  • $out->addScript( $html ) - přidá soubor JS. $html je značka úplného skriptu: '<script type="text/javascript" src="..."></script>'
  • $out->addStyle( $src ) - přidá soubor CSS. $src je adresa URL šablony stylů.
  • $out->addInlineScript( $script ) - přidá vložený JS.
  • $out->addLink( $title, $id ) - přidá odkaz na značku klíčového slova ‎<link>.

Související odkazy

[edit]