Kézikönyv:$wgAPIModules

From mediawiki.org
This page is a translated version of the page Manual:$wgAPIModules and the translation is 67% complete.
Outdated translations are marked like this.
API: $wgAPIModules
Az API-modul kiterjesztései.
Bevezetve:1.11.0 (r25364)
Eltávolítva:használatban
Megengedett értékek:(tömb)
Alapértelmezett érték:[]

Részletek

Az asszociatív tömb a modulnevet az osztálynévhez rendeli hozzá. A kiterjesztések moduljai felülírhatják a gyári modulokat (amelyek a $ApiMain-ben vannak inicializálva).

Példa

Tételezzük fel, hogy a wiki remekségi szintjét kalibráló API-modult szeretnél készítenél. Ehhez el kell készítened a CalibrateAwesomeness-t, majd a CalibrateAwesomeness.php-ban el kell helyezned az alábbi kódot:

	"AutoloadNamespaces": {
		"MediaWiki\\Extension\\CalibrateAwesomeness\\": "src/"
	},
	"APIModules": {
		"calibrateawesomeness": "MediaWiki\\Extension\\CalibrateAwesomeness\\ApiCalibrateAwesomeness"
	},

Ezután el kell készítened az ApiCalibrateAwesomeness.php-t, amelyben az ApiCalibrateAwesomeness osztály kibontja mondjuk az $ApiBase-t; például:

namespace MediaWiki\Extension\CalibrateAwesomeness;

use ApiBase;
use Wikimedia\ParamValidator\ParamValidator;

class ApiCalibrateAwesomeness extends ApiBase {

	public function execute() {
		/* … */
	}

	public function getAllowedParams() {
		return [
			'level' => [
				ParamValidator::PARAM_TYPE => 'integer',
				ParamValidator::PARAM_REQUIRED => true,
			]
		];
	}
}

Az angol Wikipédiára való telepítés után a modult a https://example.org/w/api.php?action=calibrateawesomeness&level=1000 címen érheted el.

Ha az API-modul létrehozásához egy gyármodult használnál, azt az alábbi módon definiálhatod:

	"APIModules": {
		"calibrateawesomeness": {
			"class": "MediaWiki\\Extension\\CalibrateAwesomeness\\ApiCalibrateAwesomeness",
			"factory": "MediaWiki\\Extension\\CalibrateAwesomeness\\ApiCalibrateAwesomenessFactory::create"
	},

ahol a $class az API-modul osztálya, a $factory pedig callable érték. There are more options available, see ObjectFactory for the full syntax.


Lásd még