如何在 mediawiki 中创建自己的自定义组?

Posted

技术标签:

【中文标题】如何在 mediawiki 中创建自己的自定义组?【英文标题】:How do I create my own custom group in mediawiki? 【发布时间】:2010-09-18 03:53:16 【问题描述】:

我一直在仔细阅读 mediawiki 文档,但无法找到如何创建新组。

当我查看 Special:Userrights 时,我只看到 3 个组: 机器人、系统操作员、官僚

我想创建自己的自定义组,因此我可以使用一些扩展名,例如http://www.mediawiki.org/wiki/Extension:Group_Based_Access_Control。

谁能告诉我它是怎么做的,或者给我一些文档?

【问题讨论】:

我相信我找到了答案,我只需要在 LocalSettings.php 文件中的 wgGroupPermissions 数组中添加 UserGroup 和权限。 $wgGroupPermissions['TomatoUsers']['read'] = true; $wgGroupPermissions['TomatoUsers']['edit'] = false; 【参考方案1】:

您可以将新组的权限添加到 LocalSettings.php 文件中,它们将自动出现在 Special:UserRights 页面中。

例如,我想禁止普通用户进行编辑,但创建一个允许编辑的“受信任”组。以下代码创建了一个与“user”组相同的“Trusted”组,除了“Trusted”用户可以编辑但“user”用户不能编辑。

$wgGroupPermissions['Trusted'] = $wgGroupPermissions['user'];
$wgGroupPermissions['user'   ]['edit']          = false;
$wgGroupPermissions['Trusted']['edit']          = true;
$wgGroupPermissions['sysop'  ]['edit']          = true;

在 Special:UserRights 页面上,我现在可以选中“受信任”框以使用户受信任。

【讨论】:

$wgGroupPermissions['Trusted'] = $wgGroupPermissions['user']; 在做深拷贝吗? @Wolf 是的,这是一个深拷贝。见***.com/a/1533214/2932052【参考方案2】:

您可以通过创建以下消息来更改组名的外观: (对于一个名为忍者的团体:)

MediaWiki:Group-ninja(内容:忍者) MediaWiki:Group-ninja-member(内容:忍者) MediaWiki:Grouppage-ninja(内容:Project:Ninjas)

这将确保该组在整个界面中被称为“Ninjas”,成员将被称为“ninja”,并且概览会将组名链接到 Project:Ninjas。

(来源:http://www.mediawiki.org/wiki/Manual:User_rights#Examples)

【讨论】:

为 SEO 添加这个:在 mediawiki 中重命名组 搜索引擎优化,如果您搜索“重命名 mediawiki 中的组”之类的内容,Google 现在会显示此内容【参考方案3】:

您将在此处找到权限列表。 http://www.mediawiki.org/wiki/Manual:User_rights

【讨论】:

【参考方案4】:

我相信我已经找到了答案,我只需要将 UserGroup 和权限添加到 LocalSettings.php 文件中的 wgGroupPermissions 数组中。

$wgGroupPermissions['TomatoUsers']['read']  = true;
$wgGroupPermissions['TomatoUsers']['edit']  = false;

【讨论】:

【参考方案5】:

我没有投票赞成第一个答案的声誉(也可以添加到扩展初始化文件中),但是当您将用户添加到您的组时,您可能需要考虑直接编辑数据库(即. 如果您需要将 wiki 组与外部信息同步)。如果您打开数据库“wikidb”,“PREFIX_user_groups”* 表包含用户 ID (ug_user) 和组名 (ug_group) 之间的映射。该表与“PREFIX_user”* 表的名称信息 (user_name) 和 ID 信息 (user_id) 相结合,为您提供了从组中添加和删除大量用户的所有信息。

* 将“PREFIX”替换为您用于 wiki 的数据库前缀。

【讨论】:

以上是关于如何在 mediawiki 中创建自己的自定义组?的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动中创建这样的自定义 ListView 项目?

如何在 onlyoffice 中创建用于 .xlsx 的自定义函数

Java Swing 如何在我的自定义 ColorChooserPanel 中创建颜色样本?

如何在 Qt 中创建一个基本的自定义 QGraphicsEffect?

如何在 Angular 的自定义结构中创建具有自定义结构的 JSON 数据

如何在 kafka 中创建自定义序列化程序?