Download the PHP package mediawiki/mw-extension-registry-helper without Composer
On this page you can find all versions of the php package mediawiki/mw-extension-registry-helper. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download mediawiki/mw-extension-registry-helper
More information about mediawiki/mw-extension-registry-helper
Files in mediawiki/mw-extension-registry-helper
Package mw-extension-registry-helper
Short Description Helper functions for the MediaWiki ExtensionRegistry
License GPL-3.0-or-later
Homepage https://github.com/cmln/mw-extension-registry-helper
Informations about the package mw-extension-registry-helper
MediaWiki Extension Registry Helper
The MediaWiki Extension Registry Helper is a tiny library that allows recursive loading of skins and extensions in MediaWiki.
Requirements
- PHP 5.6 or later
- MediaWiki 1.27 or later
Installation
Usage
In general dependencies on other extensions or skins should be specified in the
extension.json
of your extension
[1].
If that is not possible (e.g. because they are conditional dependencies or
because your MediaWiki version does not support dependency requirements yet),
the methods of this helper may be used.
If your skin or extension depends on another extension, call
If your skin or extension depends on another skin, call
The paths to the extension.json
/skin.json
file may be ommitted. In this case
a path will be generated from the extension or skin name.
The methods of this helper class should only be called from the callback
function defined in your extension.json
. If you call them later, e.g. from a
SetupAfterCache
hook handler, the hook handlers of the recursively loaded
extensions may not get called.
(This is unfortunately not enforcable, as the respective property of ExtensionRegistry is not exposed.)
Be aware that this helper only ensures that extensions/skins are loaded. Due to
the inner workings of the ExtensionRegistry
it cannot enforce loading in the
correct order. Particularly, if an extension or skin you depend on is already
queued for loading, it will not be advanced in the queue to be available.
This will commonly happen when both your extension and the extension it depends
on are loaded from LocalSettings.php
, but in the wrong order.
License
Copyright 2018 - 2019, Stephan Gambke
GNU General Public License, version 3 (or any later version)