Manual:$wgAutoloadClasses

From Linux Web Expert

<translate> Extensions</translate>: $wgAutoloadClasses
Array mapping class names to filenames, for autoloading.
<translate> Introduced in version:</translate>1.7.0 (r15031)
<translate> Removed in version:</translate><translate> still in use</translate>
<translate> Allowed values:</translate>see below
<translate> Default value:</translate>$wgAutoloadClasses ?? [] (1.34+)
[] (1.7-1.33)

Details

This array maps class and interface names to PHP filenames. MediaWiki core's AutoLoader uses it to load those files.

MediaWiki version:
<translate> ≥</translate> 1.25

Extensions (and skins) specify this class mapping in the AutoloadClasses key of extension.json (or skin.json), for example from the BoilerPlate extension's extension.json:

{
    ...
    "AutoloadClasses": {
        "BoilerPlateHooks": "BoilerPlate.hooks.php",
        "SpecialHelloWorld": "specials/SpecialHelloWorld.php"
    },
    ...
}

Example prior to extension.json

Assume the extension NewExtension's files are in the directory extensions/NewExtension.

If NewExtension implements a class called NewClass in the file NewClass.php, then in its initialization file NewExtension/NewExtension.php it should add to $wgAutoloadClasses as follows:

$wgAutoloadClasses['NewClass'] = __DIR__ . '/NewClass.php';
Loading interfaces is done in the same manner as loading classes

See also