Extension:AutoExtensionLoader

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Extension:AutoExtensionLoader and the translation is 75% complete.

Other languages:
English • ‎русский • ‎日本語
MediaWiki 拡張機能マニュアル
OOjs UI icon advanced.svg
AutoExtensionLoader
リリースの状態: ベータ
実装 MyWiki
説明 拡張機能を自動的に読み込む
作者 Thomas Candrian (Thomascandriantalk)
最新バージョン 0.1 (2009-06-09)
MediaWiki 1.15+
データベースの変更 いいえ
ライセンス GNU General Public License 2.0 or later
ダウンロード 下記参照
translatewiki.net で翻訳を利用できる場合は、AutoExtensionLoader 拡張機能の翻訳にご協力ください
使用状況とバージョン マトリクスを確認してください。

AutoExtensionLoader拡張機能は、extensionフォルダ内のすべての拡張機能を読み込みます。

/extensions/EXTENSIONNAME/EXTENSIONNAME.php

または

/extensions/EXTENSIONNAME.php

Thus it simplifies installation of extensions. From now on it's enough to put them into the extension folder. AutoExtensionLoader will then load it!

インストール

  • Copy the code into a fileして、ファイルを extensions/ フォルダー内の AutoExtensionLoader という名前のディレクトリ内に配置します。
  • 以下のコードを LocalSettings.php の末尾に追加します:
    require_once "$IP/extensions/AutoExtensionLoader/AutoExtensionLoader.php";
    
  • Yes 完了 – ウィキの「Special:Version」に移動して、拡張機能が正しくインストールされたことを確認します。

Code

AutoExtensionLoader.php
<?php

/**
 * Extension which loads all Extensions in extension folder
 *
 * @addtogroup Extensions
 * @author Thomas Candrian, dm-informatik.com
 * @copyright © 2009 Thomas Candrian
 * @license GNU General Public Licence 2.0 or later
 */

if (!defined('MEDIAWIKI')) {
	echo ( "This file is an extension to the MediaWiki software and cannot be used standalone.\n" );
	die(1);
}

$wgExtensionCredits['other'][] = array(
	'path' => __FILE__, 
	'name'   => 'AutoExtensionLoader',
	'version'=> '0.1',
	'url'    => 'https://www.mediawiki.org/wiki/Extension:AutoExtensionLoader',
	'author' => 'Thomas Candrian',
	'description' => 'Loads all extensions in the extension folder automatically'
);

if ($handle = opendir("$IP/extensions/")) {
	while (false !== ($file = readdir($handle))) {
		if ($file != "AutoExtensionLoader" and $file != "AutoExtensionLoader.php" and $file != "." and $file != "..") {
			if (is_file("$IP/extensions/" . $file . "/" . $file . ".php")) {
				include_once ("$IP/extensions/" . $file . "/" . $file . ".php");
			}
			if (is_file("$IP/extensions/" . $file . ".php")) {
				include_once ("$IP/extensions/" . $file . ".php");
			}
		}
	}
	closedir($handle);
}