目前我正在尝试为“user:”命名空间设置一些自定义提交,因为不应允许普通用户编辑或创建文章,而是设置他们的个人文章。因此,他们需要权限“编辑”和“创建页面”,我禁用它们。 我已经尝试了默认ID“2”,你在这里找到它:Link并设置一个自己的命名空间,在我的例子中它是“102”。但是这两个版本都没有用,或者我的代码有问题吗?
$wgGroupPermissions['user'] ['ns102_edit'] = true;
$wgGroupPermissions['user'] ['ns102_create'] = true;
和
$wgGroupPermissions['user'] ['ns2_edit'] = true;
$wgGroupPermissions['user'] ['ns2_create'] = true;
答案 0 :(得分:0)
如果要限制命名空间中的编辑,则应使用$wgNamespaceProtection
,例如像这样:
$wgNamespaceProtection[NS_MAIN] = $wgNamespaceProtection[NS_MEDIAWIKI] =
$wgNamespaceProtection[NS_PROJECT] = $wgNamespaceProtection[NS_FILE] =
$wgNamespaceProtection[NS_TEMPLATE] = $wgNamespaceProtection[NS_HELP] =
$wgNamespaceProtection[NS_CATEGORY] = array( 'sysop' );
这将使提到的名称空间只读给除站点管理员之外的任何人。谈话页面仍然可以编辑。您可能还想查看扩展程序Lockdown。它使每个命名空间的特权更容易维护。
在您的情况下,我觉得您也想使用UserPageEditProtection,以防止用户编辑其他用户页面。