MediaWiki variable extension (LocalSettings code).php
<?
- Extend [[MediaWiki variables]]
- Add new variables to MediaWiki environment
$wgHooks['MagicWordMagicWords'][] = 'wfAddCustomMagicWord'; $wgHooks['MagicWordwgVariableIDs'][] = 'wfAddCustomMagicWordID'; $wgHooks['LanguageGetMagic'][] = 'wfAddCustomMagicWordLang';
function wfAddCustomMagicWord(&$magicWords) { $magicWords[] = 'MAG_CURRENTUSER'; $magicWords[] = 'MAG_LOGO'; return true; }
function wfAddCustomMagicWordID(&$magicWords) { $magicWords[] = MAG_CURRENTUSER; $magicWords[] = MAG_LOGO; return true; }
function wfAddCustomMagicWordLang(&$magicWords, $langCode = 0) { $magicWords[MAG_CURRENTUSER] = array(0,'CURRENTUSER'); $magicWords[MAG_LOGO] = array(0,'LOGO'); return true; }
- Define functionality of new vars
$wgHooks['ParserGetVariableValueSwitch'][] = 'GetVariable'; function GetVariable(&$this,&$cache,&$index,&$ret) { switch ($index) {
case MAG_CURRENTUSER: $ret = $GLOBALS['wgUser']->mName; break;
case MAG_LOGO: $ret = $GLOBALS['wgLogo']; break;
} return true; } ?>