Manual:$wgAutopromote

From mediawiki.org
This page is a translated version of the page Manual:$wgAutopromote and the translation is 100% complete.
アクセス権: $wgAutopromote
利用者が特定のグループに自動昇格する条件
導入されたバージョン:1.12.0 (r28797)
除去されたバージョン:使用中
許容される値:(配列)
既定値:(下記参照)

詳細

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

$wgAutopromote = [
    'groupname' => cond,
    'group2' => cond,
];

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

使用できる条件

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

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

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

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

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

条件の集合

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

[ 'operand', cond1, cond2, ... ];

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

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

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

注意事項

自動昇格機能では実際に利用者をグループに追加しません。MediaWikiは利用者の権限や有効なグループを確認するたびに、利用者が自動昇格の条件を満たしているかどうかを確認します。 これは、利用者がSpecial:UserRightsを通して手動で追加された場合のみ、Special:ListUsers上でグループに所属しているように見えるということです。

MediaWiki 1.18 以降では、代わりにAutopromoteOnce を使用できます。これは、利用者が指定された条件に一致し、過去に降格(グループ除去)されたことがない場合に通常通りグループに利用者を追加します。 または、$wgRevokePermissions (MW 1.16+)が役に立つかもしれません。

臨時利用者は、利用者グループに割り当てることができないため、自動昇格はできません。


既定値

MediaWiki バージョン:
1.38
$wgAutopromote = [
	'autoconfirmed' => [ '&',
		[ APCOND_EDITCOUNT, null],
		[ APCOND_AGE, null ],
	],
];
MediaWiki バージョン:
1.13 – 1.37
$wgAutopromote = [
	'autoconfirmed' => [ '&',
		[ APCOND_EDITCOUNT, &$wgAutoConfirmCount ],
		[ APCOND_AGE, &$wgAutoConfirmAge ],
	],
];
MediaWiki バージョン:
1.12
$wgAutopromote = array(
	'autoconfirmed' => array( '&',
		array( APCOND_EDITCOUNT, &$wgAutoConfirmCount ),
		array( APCOND_AGE, &$wgAutoConfirmAge ),
	),
	'emailconfirmed' => APCOND_EMAILCONFIRMED,
);

メールアドレスが確認済みで、100回の編集またはアカウント登録から60日が経過した利用者を captain に自動昇格させたい場合は、次のように設定します:

$wgAutopromote = [
	'captain' => [
		'&',
		APCOND_EMAILCONFIRMED,
		[
			'|',
			[ APCOND_EDITCOUNT, 100 ],
			[ APCOND_AGE, 60*86400 ],
		],
	],
];

これは他のすべての自動昇格条件を上書きすることに注意してください。既存の自動昇格条件を維持しつつ、captain の自動昇格条件を追加するには、次のように設定します:

$wgAutopromote['captain'] = [
	'&',
	APCOND_EMAILCONFIRMED,
	[
		'|',
		[ APCOND_EDITCOUNT, 100 ],
		[ APCOND_AGE, 60*86400 ],
	],
];

関連項目