Kézikönyv:$wgExtensionFunctions
Kiterjesztések: $wgExtensionFunctions | |
---|---|
A MediaWiki teljes inicializációja után meghívandó funkciók listája. |
|
Bevezetve: | 1.3.0 (r3583) |
Eltávolítva: | használatban |
Megengedett értékek: | nincs megadva |
Alapértelmezett érték: | [] |
Egyéb beállítások: Betűrendben | Funkció szerint |
Részletek
A változó értéke egy tömb, amelyben a MediaWiki inicializációja után meghívandó funkciók találhatók. Jelenleg a RequestContext nem működik teljes körűen, így ennek (vagy az ezzel megegyező globális változók, például a $wgUser vagy $wgTitle) használata furcsa hibákat eredményezhet. Ha szükséged van a RequestContext használatára, fontold meg helyette a BeforeInitialize és a ApiBeforeMain hookok használatát.
Vedd figyelembe, hogy egyes konfigurációs változók feldolgozásra kerülhettek, így módosításuk nem feltétlenül biztonságos. While there is currently no dedicated place for changing configuration, the MediaWikiServices hook is a better option than extension functions.
A változót a haladó műveleteket végző kiterjesztések beállítási kódja inicializálásának utolsó lépéseként kell használni, mint a globális funkciók vagy automatikusan betöltődő osztályok esetén. Általában minden kiterjesztéshez tartozik egy beállítási funkció. A tömb elemei általában a kiterjesztés fájljában vannak definiálva a call_user_func() PHP-funkcióval kompatibilis formában.
$wgExtensionFunctions[] = "functionName";
$wgExtensionFunctions[] = array( $classInstance, 'functionName' );
$wgExtensionFunctions[] = array( 'ClassName', 'staticFunctionName' );
$wgExtensionFunctions[] = 'ClassName::staticFunctionName';
Ezután minden beállítási funkció meghívása az /includes/Setup.php -ból történik.
Például, ha a kiterjesztésednek szüksége van adatbázis-hozzáférésre az inicializáció során, az alábbi forma használatos:
function initMyExtension() {
$dbr = wfGetDB( DB_REPLICA );
$myExtension = new MyExtension();
$myExtension->loadSettingsFromDatabase( $dbr );
}