Manual:$wgAPIModules

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:$wgAPIModules and the translation is 100% complete.
Other languages:
English • ‎Türkçe • ‎español • ‎magyar • ‎polski • ‎中文 • ‎日本語
API: $wgAPIModules
API modülü uzantıları.
Sürümde tanıtıldı:1.11.0 (r25364)
Sürümde kaldırıldı:hala kullanımda
İzin verilen değerler:(dizi)
Varsayılan değer:[]

Ayrıntılar

İlişkisel dizi eşleme modülü adı, sınıf adı. Uzantı modülleri, (ApiMain.php içinde başlatılan) temel modülleri geçersiz kılabilir.

Örnek

Vikinin mükemmellik seviyesini kalibre etmek için bir API modülü oluşturmak istediğinizi varsayalım. CalibrateAwesomeness adlı yeni bir uzantı yazarsınız ve aşağıdakileri CalibrateAwesomeness.php dosyanıza koyarsınız:

$wgAutoloadClasses['ApiCalibrateAwesomeness'] = __DIR__ . 'ApiCalibrateAwesomeness.php';
$wgAPIModules['calibrateawesomeness'] = 'ApiCalibrateAwesomeness';

Ardından, örneğin ApiBase ile genişleten bir ApiCalibrateAwesomeness sınıfını içeren bir ApiCalibrateAwesomeness.php dosyası oluşturursunuz, ör.

class ApiCalibrateAwesomeness extends ApiBase {
	public function execute() {
	...
	}

	public function getAllowedParams() {
		return array(
			'level' => array (
				ApiBase::PARAM_TYPE => 'integer',
				ApiBase::PARAM_REQUIRED => true
			)
		);
	}
}

Yeni uzantınızı İngilizce Vikipedi'ye yükledikten sonra, bu modüle örneğin https://en.wikipedia.org/w/api.php?action=calibrateawesomeness&level=1000 kullanarak erişebilirsiniz.

API modülünü oluşturmak için bir fabrika kullanmak istiyorsanız, bunu şu şekilde tanımlayabilirsiniz:

$wgAPIModules['calibrateawesomeness'] = [
    'class' => 'ApiCalibrateAwesomeness',
    'factory' => 'ApiCalibrateAwesomenessFactory::create',
];

class, API modülünün sınıfıdır ve factory bazı çağrılabilir. Kullanılabilir daha fazla seçenek var, söz diziminin tamamı için ObjectFactory sayfasına bakın.

Ayrıca bakınız