如何在 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 中创建自己的自定义组?的主要内容,如果未能解决你的问题,请参考以下文章
如何在 onlyoffice 中创建用于 .xlsx 的自定义函数
Java Swing 如何在我的自定义 ColorChooserPanel 中创建颜色样本?
如何在 Qt 中创建一个基本的自定义 QGraphicsEffect?