如何在MediaWiki中自动将满足条件的用户加入指定用户组?
MediaWiki自动添加用户到指定组的正确配置方法
你的代码不生效有两个核心问题:语法逻辑错误,以及时间单位设置错误。以下是正确的实现步骤:
1. 纠正配置逻辑与代码
$wgAutoConfirmCount和$wgAutoConfirmAge是MediaWiki的全局配置变量,不能嵌套在$wgGroupPermissions里,而且$wgAutoConfirmAge的单位是秒,你写的30代表30秒,不是30天,这是关键错误。
正确的配置代码如下(添加到LocalSettings.php中):
// 设置自动确认的条件:500次编辑 + 注册满30天 $wgAutoConfirmCount = 500; $wgAutoConfirmAge = 30 * 24 * 3600; // 30天转换为秒数 // 指定达到条件后自动加入的用户组(比如你要的extendedconfirmed) $wgAutoConfirmGroup = 'extendedconfirmed'; // 配置该组的基础权限(继承普通用户权限,可按需添加额外权限) $wgGroupPermissions['extendedconfirmed'] = $wgGroupPermissions['user'] + [ // 示例:允许编辑半保护页面 'editprotected' => true, ];
2. 让配置生效
- 保存
LocalSettings.php后,访问Wiki的Special:Version页面,点击页面底部的"刷新缓存"按钮,清除系统缓存。 - 对于已经符合条件的老用户,需要手动运行维护脚本来更新他们的用户组:
在服务器终端执行:php maintenance/refreshUserGroups.php
3. 验证效果
新用户满足500次编辑+注册满30天的条件后,系统会自动将其加入extendedconfirmed组;老用户在运行维护脚本后也会被批量添加。
内容的提问来源于stack exchange,提问作者Dylan
相关产品推荐
相关产品推荐

