Manual:$wgAutopromote

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Manual:$wgAutopromote and the translation is 86% complete.

Other languages:
العربية • ‎Deutsch • ‎English • ‎français • ‎日本語 • ‎polski • ‎русский • ‎中文
Access: $wgAutopromote
利用者が特定のグループに自動昇格する条件
導入されたバージョン: 1.12.0 (r28797)
除去されたバージョン: 使用中
可能な値: 配列
既定値:
$wgAutopromote = array(
    "autoconfirmed" => array( "&",
        array( APCOND_EDITCOUNT, &$wgAutoConfirmCount ),
        array( APCOND_AGE, &$wgAutoConfirmAge ),
    ),
    "emailconfirmed" => APCOND_EMAILCONFIRMED,
);

1.14+

$wgAutopromote = array(
	"autoconfirmed" => array( "&",
		array( APCOND_EDITCOUNT, &$wgAutoConfirmCount ),
		array( APCOND_AGE, &$wgAutoConfirmAge ),
	),
);
他の設定: アルファベット順 | 機能順


詳細

この配列では自動昇格の条件を設定します。構文は以下の通りです:

$wgAutopromote = array(
    'groupname' => cond,
    'group2' => cond,
);

cond には以下を指定できます:

Possible conditions

使用できる条件 (Defines.phpManual:Defines.php 内で定義されており、拡張機能が AutopromoteConditionManual:Hooks/AutopromoteCondition フックで他の条件を追加する場合があります):

条件 説明 引数
APCOND_EDITCOUNT 最低限必要な編集回数 整数
APCOND_AGE 登録からの経過秒数の最小値 整数
APCOND_EMAILCONFIRMED メールアドレスが確認済み (利用不可)
APCOND_INGROUPS 利用者が所属すべきグループの列挙 例:, 'sysop', 'bureaucrat', 'bot'
APCOND_ISIP 利用者が特定の IP アドレスを持つ 例:, '1.2.3.4' or '2001:0db8:85a3::7344'
APCOND_IPINRANGE 利用者が特定の IP レンジに所属 Manual:IP 範囲Manual:IP ranges を参照
APCOND_AGE_FROM_EDIT 最初の編集からの経過秒数の最小値 整数
APCOND_BLOCKED アカウントがブロックされている (バージョン 1.16 r52083 で追加) (利用不可)
APCOND_ISBOT アカウントがボットである (利用不可)

引数がある条件とない条件

各条件は 2 通りの書式で書けます:

APCOND_EMAILCONFIRMED   # 引数がない条件
array( APCOND_EDITCOUNT, 100 )   # 引数がある条件

条件の集合

条件の集合の構文は以下の通りです:

array( "operand", cond1, cond2, ... );

4 つのオペランド (operand) を利用できます:

  • & (AND) — 利用者がすべての条件を満たす場合に昇格する。
  • | (OR) — 利用者がどれかの条件を満たす場合に昇格する。
  • ^ (XOR) — 利用者が2つのうち1つだけの条件を満たす場合に昇格する。
  • ! (NOT) — 利用者がどの条件も満たさない場合に昇格する。

条件の集合は再帰的に評価されるため、オペランドで接続することで、条件の集合の入れ子を使用できます。

Caveats

Autopromotion doesn't actually add users to a group; MediaWiki will check whether a user meets the conditions for autopromotion whenever it checks the user's rights or effective groups. This means that a user will only appear to be in a group on Special:ListUsers if they were added to it through Special:UserRights. It also means you can't directly remove a user from an autopromotion group through Special:UserRights: $wgRevokePermissionsManual:$wgRevokePermissions might be useful for you, or if you're not using MediaWiki 1.16+, a workaround is available.

If you wanted to autopromote each user to captain upon his having both confirmed his email address and either made at least 100 edits or registered his account at least 60 seconds ago, you would use:

$wgAutopromote = array(
	'captain' => array(
		'&',
		APCOND_EMAILCONFIRMED,
		'|',
		array( APCOND_EDITCOUNT, 100 ),
		array( APCOND_AGE, 60 ),
	),
);

Note that this would get rid of all other autopromote groups; to instead add the captain autopromote group while keeping those autopromote groups that already exist, one would use:

$wgAutopromote['captain'] = array(
	'&',
	APCOND_EMAILCONFIRMED,
	'|',
	array( APCOND_EDITCOUNT, 100 ),
	array( APCOND_AGE, 60 ),
);

関連項目