我正在构建一个Mediawiki站点,其中将包含几千篇Bot生成的文章。我希望用户能够编辑每篇文章的较低部分,而不是编辑机器人生成的部分。
我找到了一个名为ProtectSection的废弃扩展,它可以实现这一点,但我没有技能来更新它以适应当前的Mediawiki发行版。
我正在考虑让Bot生成的文章受到保护,然后将它们转换成用户可编辑的文章。如果我这样做了,我能隐藏原来的机器人生成的文章,从搜索引擎,并避免在wiki中导航?
此外,我希望用户能够参考以前版本的机器人生成的文章,因为他们的文本将不时由机器人更新。如果我翻译并隐藏机器人生成的文章,我假设它们的历史将是不可访问的。如果我可以让机器人生成的文章可用,并在文章中包含可用户编辑的部分,这就不是问题了。
发布于 2016-06-08 14:52:24
我有个坏消息。使文章的一部分受到保护是非常困难的。当前的mediawiki体系结构不允许从头开始使用它。
我建议您做的是创建自定义名称并将所有bot的文章放在那里。
//定义其他命名空间的常量。定义(“NS_FOO”,3000);//这必须是偶数。定义(“NS_FOO_TALK”,3001);//这必须是以下奇数。//添加名称空间。$wgExtraNamespacesNS_FOO = "Foo";$wgExtraNamespacesNS_FOO_TALK = "Foo_talk";// Note在名称空间名称中下划线。
Resrict普通用户编辑此自定义命名空间,这是一些信息。但允许用户查看此页面的历史记录。
只允许自动确认的用户编辑项目名称空间$wgNamespaceProtectionNS_PROJECT =数组(“自动确认”);#不允许任何人在确认#电子邮件地址(假设我们没有自定义名称空间并允许来自非电子邮件确认用户的编辑#开始)之前编辑非对话页面#注1.13:从默认的#设置中删除了电子邮件确认的组和权限,如果您想使用它,则必须手动重新启用它-- $wgNamespaceProtectionNS_MAIN = $wgNamespaceProtectionNS_USER = $wgNamespaceProtectionNS_PROJECT = $wgNamespaceProtectionNS_IMAGE = $wgNamespaceProtectionNS_TEMPLATE = $wgNamespaceProtectionNS_HELP =$wgNamespaceProtectionNS_HELP=$wgNamespaceProtectionNS_HELP=数组(‘email凭据’);#只允许sysops编辑"Policy“名称空间$wgGroupPermissions'sysop‘= true;$wgNamespaceProtectionNS_POLICY = array( 'editpolicy’);
最后一步,您已经知道-使用换位。
https://stackoverflow.com/questions/37682120
复制相似问题