手册:特殊页面

来自MyaWiki.Org
跳转到导航 跳到搜索

OOJS UI图标 扩展 发展 ·标记扩展 ·解析器函数 ·挂钩 ·专版 · ·魔法词 ·应用程序接口 ·内容模型
MeimaWiKi扩展

专版是由软件按需创建的页面,以执行特定的功能。例如,一个特殊的页面可以显示所有有一个或多个链接到外部站点的页面,或者它可以创建一个表单,提供用户提交的反馈。特殊页面位于自己的位置命名空间 特殊并且不能像其他页面一样直接编辑。开发商 S还可以创建新的特殊页面。这些页面可以是用户可访问的,并且通常会出现在所有特殊页面的列表中。专题:专页. 一些特殊的页面只对具有一定权限和访问权限的用户访问。其他特殊页面根本不显示在特殊的页面列表上,只由Wiki内部使用。

基本信息

所有内置MyaWiKi的特殊页面被称为特殊的PHP并且位于包括/特价目录.核心特殊页面必须注册在核心列表中包含/PrimePope/Expple PosialFase.PHP为了被MyaWiki加载。第三方开发者创建的特殊页面通常存储在扩展目录在自己的文件中或作为较大扩展的一部分。所有特殊页从一个类继承专页定义在包含/特殊页面. 当创建一个新的特殊页面时,可以定义访问页面所需的用户权限。这些权利指定了页面是否会出现在其他方面。专题:专页以及页面是否可在其他页面中包含。

特殊页面也有独特的名称,可以在wiki上进行定制。一般的形式是“特殊:PANENAMEY”,其中“特殊”和“PANENAMY”都是可定制的。特殊伪命名空间 可以用其他语言翻译。这个翻译的命名空间可以用WiKiTeX{{NS:Ent}}产生,在这个wiki上给出“特殊”。这个姓名特殊页面也可以在系统消息中重新定义,对于站点语言,以特殊页面的通用名称作为ID.。

特殊页可能允许或不允许输入。例如,特殊:出口允许用户通过调用来定义要导出的特定页特色:出口/ Sun. 如果特殊页允许复杂的输入,则将附加参数发送到查询字符串用于处理的URL的组件,例如HTTP://www. MyaWikI.Org/W/Delix.PHP?标题=特殊:Reuntchange和天=3和限制=250.

  • 有多种方法专版,但下面的一个是由官方官员使用的扩展 并坚持这种风格。另外,一定要在“特殊页面”的新的特殊页面中包含信用块。$WGREST 更多细节。
  • 在制作一个新的特殊页面之后,请务必将其添加到类别:特殊页面扩展所以其他人可以找到它。
  • 此方法仅适用于在PHP5和以上运行的MyaWiKi。如果您使用的是MyaWiKi的早期版本,则是PHP的最新版本,升级MiaWiKi .
  • 除非您使用,否则特殊页不能包含在帧内。$WGOUT->

基本特殊页面模板

大多数特殊的页面扩展需要三个文件:

  • 小型安装文件,每次加载MIATAWIKI启动。
  • 文件的大部分代码。
  • 本地化文件。

MealWiKi编码约定定义了这样的三个文件:

  • 扩展/扩展-安装文件。
  • MyReals/Src/Primult.PHP-特殊页代码。
  • I18N/*.JSON-本地化文件 .

将所有文件放置在MyaWiKi中的新目录中扩展目录

扩展后应命名特殊页文件。例如,小工具扩展包含文件PHP如果你的扩展使用了不止一个特殊的页面,你需要更多的名字。

在下面的示例中,特殊页面的名称是我的扩展.

在创建下面列出的文件之后,添加以下行本地设置启用扩展:

拉伸张力 “我的扩展” 

安装文件

示例安装文件扩展/扩展

{
	“姓名” “我的延伸”
	“版本” “0.0.0”
	“作者” [
		“你的名字”
	
	“URL” “http://www. Meawiwik.org/wiki /扩展:MyDebug”
	“描述性MSG” “MyExpDeSeC”
	“许可证名称” “麻省理工学院”
	“类型” “其他”
	“AutoLoad NealSePes” {
		“MyaWiki\Extal\MyDebug” “SRC/”
	}
	“专页” {
		“我的延伸” “MIDAWIKI\\扩展\ MyExpRe[特殊””
	}
	“可用性” [
		“我的扩展权”
	
	“MessagesDirs” {
		“我的延伸” [
			“I18N”
		]
	}
	“宣言版” 
}

这个文件记录了一些重要的和强制性的事情:

  • MeaWiKi\Ext[MyExpRelay]特殊类的位置;
  • 本地化文件的位置;
  • 新的特殊页面及其类名。

特殊页面文件

正文文件(正文文件)MyReals/Src/Primult.PHP)应该包含一个子类专页或其子类之一。这个文件在有人请求特殊页面时自动加载。下面的例子实现了子类特殊扩展。

你需要β构造()构造函数,因为它的第一个参数命名你的特殊页面。

执行程序()是访问特殊页时调用的主要函数。这个函数重写函数特殊页面::. 通过单一参数面值面值当前标题的子页面组件。例如,如果有人跟踪链接特殊:MyDelay/BLAH面值面值包含“BLAH”。

您应该运行WiKiTeXT和HTML输出$WGOUT. 在Wiki用户界面中工作时,不要直接使用“打印”或“回音”。

但是,如果使用特殊页作为自定义XML或二进制输出的访问点,请参阅接管特殊页面的输出 .

<?PHP
 特殊延伸 延伸 专页 {
	功能 β-构造() {
		父母::β-构造 “我的扩展” 
	}

	功能 执行 面值面值  {
		美元要求 = $此>获取请求();
		美元产量 = $此>获得输出();
		$此>色鬼();

		从请求中获取数据,例如
		$PARAM = 美元要求>获得文本 帕拉姆 

		做某事
		……
		$WikEXTEXT = “你好,世界!”
		美元产量>AdvWiTwitter $WikEXTEXT 
	}
}

本地化文件

本地化添加新消息 如何翻译它们。

所有特殊页面都指定一个标题,比如“我的分机”.

  • 标题使用在<标题>

    扩展页面的元素专题:专页.

  • 它可以是任何东西,但应该描述特殊的页面和扩展。
  • 它是通过一个消息来指定的。消息的结构是一个键值对。钥匙,“我的扩展”必须全是小写字母。

本地化文件的一个示例MyExp/I18N/E.JSON

{
	“@元数据” {
		“作者” [
			“<你的用户名>”
		]
	}
	“我的延伸” “我的分机”
	“MyExpDeSeC” “添加MyDebug功能。”
	“我的扩展摘要” “在这个特殊的页面上,做这件简单的事情,创造奇迹。”
}

进入I18N/QQQ.JSON, the消息文档

{
	“@元数据” {
		“作者” [
			“<你的用户名>”
		]
	}
	“我的延伸” “扩展:特殊页面中的条目名称:专页”
	“MyExpDeSeC” “{{DESC}}”
	“我的扩展摘要” “特写:MyExtension。”
}

请注意,IDS不应该以大写字母开头,ID中的空格应作为下划线写入代码中。

摘要消息是可选的。它由父类自动创建,并显示在特殊页面的顶部,通常用于用户可以在其上做些什么的简要描述。如果你不定义它的内容,它只会在wiki管理员在wiki上自定义它时使用。

别名文件

还可以通过为它创建别名来国际化特殊页的名称。下面的示例使用文件“I18n/MyExp.I18n.Ayas.php”。在这个例子中,特殊的页面我的扩展注册一个别名因此,页面变得易于访问。…/特殊:我的扩展……在德语中。

将您的别名文件添加到扩展子


	“扩展消息文件” {
		“MyExtensionAlias” “I18N/MyDelay.I18n.Ayas.php”
	}

将特殊页别名添加到I18N/MyExeltual.I18N.Ayas.PHP

<?PHP
/**
*扩展名别名
*
*@文件
*@群内扩展
*/

特别广告费 = [];

/**英语
*@作者<用户名>
*/
特别广告费[“恩”] = [
	“我的扩展” = > [ “我的扩展” “我的分机” 


**德意志
*@作者<用户名>
*/
特别广告费[“德”] = [
	“我的扩展” = > [ “梅尼韦特隆” “Meine Erweiterung” 

同样,应该在ID中写入一个空格作为代码中的下划线。

对于页眉和链接,应用页名称的常规规则。

如果美元资本 是真的,小写字母被转换为大写字母,下划线被显示为一个空格。

例如,代替上述,我们可以使用“MyOpFieldExt=”>“我的扩展名”假设我们始终将扩展定义为My-扩展别处。

请注意,在英语中的关联数组中,字符串标识了我们的SpecialPage(我的扩展在示例中,)是有效的标题

还要注意的是,第一个元素$$PrimePayAcdiase[ 'En] 必须和钥匙一样(“我的扩展”)!否则专题:专页不会列出页面。

特殊页面组

你可以设置你的特殊页面出现在哪个组专题:专页压倒一切特殊页面::GETGROMPNAMEY()在你的子类中。

    /**
*重写父对象,设置特殊页面在特殊页面上显示的位置
*“其他”是默认的。如果这是你想要的,你不需要重写。
*指定“媒体”使用<代码>专页组媒体< /代码>系统接口消息,将其转换为“媒体报告和上传”的英文;
*
*@返回字符串
*/
    功能 获取组名称() {
        退货 “媒体”
    }

一些常见的值是“登录”、“维护”、“媒体”、“其他”、“页面”、“重定向”、“用户”。你可以看到特殊的接受值:AllMessages(搜索)特殊页面组还是通过使用特殊语言“QQX”浏览Wiki?UsLang= qqx)并看标题。指定“媒体”一词来使用接口消息“特殊页面组媒体”。

如果您的特殊页不适合任何预先配置的标题,您可以通过添加到您的本地化文件中添加新标题,参见本地化文件

与MiaWiWi一起出现的标准页面组在本地化文件中列出。例如,英语消息在语言/I18N/E.JSON然后开始特殊页面组. 如果你想对你的特殊页面进行分类用户然后消息就是特殊页面组用户. 该键的值是作为该类别的名称出现的文本,例如,用户与权利.

如果你的特殊页面似乎不适合任何现有的类别,你总是可以做一个新的。在扩展的本地化文件中,只需插入一个新的密钥消息数组。在这个例子中,我们定义了游戏化群组

{
    “我的延伸” “我的分机”
	“MyExpDeSeC” “添加MyDebug功能。”
	“我的扩展摘要” “在这个特殊的页面上,做这件简单的事情,创造奇迹”
	“特殊页面组游戏化” “游戏化”
}

现在,假设您为方法设置返回值特殊页面::GETGROMPNAMEY()作为游戏化在类定义中,重新加载专题:专页看看你的新类别。

其他重要文件

特殊页面

构造函数

你可以超载构造函数初始化您自己的数据,但您要做的主要原因是更改特殊页类本身的行为。当从子类调用基类构造函数时,可用下列参数:

功能 β-构造 美元名称 =  美元限制 =  挂牌上市 =  
  • 字符串 美元名称特殊页面的名称,如链接和URL中所见
  • 字符串 美元限制 用户权限要求,例如“阻止”或“删除”;也见限制页面访问
  • 布尔 挂牌上市页面是否在特殊页面中列出:专页

特殊页>

这将初始化输出页对象。$WGOUT用你的特殊页面的名称和描述。它应该总是从你的ExcUnE()方法调用。

特殊页> GETOutPUT()

此方法返回一个OutPutsPoad对象,可以如下面所描述的那样访问。例如,在示例代码中,使用

美元产量 = $此>获得输出();
美元产量>AdvWiTwitter “你好,世界” 

而不是被贬低$WGOUT全局变量

特页-> GETReQuestEnter()

此方法返回一个WebRestQuestObjt对象,该对象可以访问如下所述。例如,在示例代码中,使用

美元要求 = $此>获取请求();
米帕兰 = 美元要求>获得文本 迈帕兰 

而不是被贬低$GRESQUEST全局变量

特殊页> >()

一些特殊页面可以从另一个页面中包含进来。例如,如果将{{特殊:ReuntRechange }}添加到页面的WiKiTeXT中,它将在页面的现有内容中插入最近的更改列表。

如果在构造函数中声明页面是可包含的,那么从另一个网页中包含一个特殊的页面是可能的。你可以通过在下面添加以下内容来实现这一点β构造()父类初始化之后的方法:

$此>可封存的 = 

还可以将特殊页类定义为扩展CuffablExialPage类。

Apple Page >包含()函数返回一个布尔值,告诉你特殊页面被调用的上下文是什么:如果它是一个单独的网页,则为false,如果它被包含在另一个网页中,则为true。通常,如果页面被包含,你会想稍微减少演示文稿。

特殊页>执行程序()

这是您的子类应该过载的函数。它传递一个单一的参数,通常被称为面值面值(短参数为$,因为它是用户可以输入到特定页面的参数)。这个参数是当前标题的子页面组件。例如,如果有人跟踪链接特殊:MyDelay/BLAH面值面值将包含“BLAH”。

帮助页面
MIDAWIKI版本: ±一点二五

添加是有用的帮助页面在MyaWiki.Org,它们将在哪里可译的. 为了确保用户找到你的帮助页面,对于你的专页来说,链接帮助页面是非常明智和非常简单的:

$此>辅助螺旋线 帮助:扩展:MyDebug 

OutPuth.PHP

OutPutp.PHP包含类型对象的类定义输出页面. 你可以从你的专页中得到这个类的对象

美元产量 = $此>获得输出();

当然,变量的输出是任意的。不管你怎么称呼它,这都是你将使用最多的变量,因为它是向浏览器发送输出的方法(不,你不使用)回声打印如果您想在某个地方使用它,请声明变量全局:

功能 随机化函数() {
        美元产量 = $此>获得输出();
	美元产量>AdvHTML 这不是管道… 
}

如果需要,可以在特殊页扩展中以不同的方法创建多个OutPoPoT对象。它们将按照执行的顺序添加输出。

可以通过查看检查输出页类包含/OutPutsPy.PHP (实际上,所有这些都可以被检查),但是有一些方法你应该知道。

输出页-> ADHTML*()

本质上是快速和肮脏的替代品回声. 它接受输入并将其添加到缓冲区:没有问题要问。在下面的动作中,如果美元行动包含用户数据,它可以很容易地有XSS、邪恶的东西或产卵。撒旦注入。你最好使用转义(比如PHP函数HTMLIt实体)或XML建造者类来构建可信输出。

美元产量>AdvHTML <窗体动作=.美元行动.“方法=”POST“> 

输出页面-> AdviKiTeX()

对于大多数输出,您应该使用此函数。这是一个有点神奇的功能:WiKiTeXT进入,HTML出来,整个奥秘代码和恶魔召唤发生在两者之间。

美元产量>AdvWiTwitter“这是一些‘可爱’”,[将很好地解析]。

值得注意的是,解析器会把你的块看作是完整的整体和段落。那是…

美元产量>AdvWiTwitter “*项目1” 
美元产量>AdvWiTwitter “*项目2” 
美元产量>AdvWiTwitter “*项目3” 

将输出三个列表,每一个项目,这可能不是故意的。

警告 警告: 如果你的特殊页面被包含在其他页面中,你可能不应该使用。AdWiWITKEXT()(或调用解析器的任何其他函数,除了解析相关消息相关的函数($--> MSG-()),可以调用MyaWiKi的现代版本。由于MyaWiKi中的一个bugT18129缺陷一个包含的特殊页面将在同一个页面上混淆任何包含,显示字符串如UNIQ10842E596CBB71DA。

但是,如果您只想插入一个系统消息,并将其像解析的WiKiTeXT一样对待,您可以使用类似代码$-> GETOutPUT()-> ADDHTML($IT-> MSG(消息的键)-> PARSER()). 这将不会有上面提到的嵌套解析器调用的问题。

解决办法1

重要的是:如果你正在制作一个可移植的特殊页面,这些工作的需求是唯一需要的。正常的特殊页面不需要这些。

作为解决方案,您可以使用单独的解析器对象将您的扩展转换为WiKiTeXT到HTML,然后使用AdHTML*(). 例:

$WGOUT>AdvHTML $此>沙文分析 “这里有一些‘格式化’的‘文本’。”  
假设这是在与您的特殊页代码的其余类相同的类内
功能 沙文分析 $WikEXTEXT  {
	$MyPalsServer =  语法分析器();
        $用户 = $此>获取用户();
        美元头衔 = 自己::获得冠军“您的正则特殊PrimeNeNe”
	美元期权 = 帕塞斯期权::新弗罗斯特 $用户 
	结果美元 = $MyPalsServer>解析 $WikEXTEXT 美元头衔 美元期权 
	退货 结果美元>获得文本();
}
解决办法2

我尝试了上面的内容,发现同样的问题现在被应用到文本中的任何 s。这对于很多扩展来说都不是问题,但是我写的扩展旨在将WiKiTeXT从另一个页面显示为其功能的一部分,所以这是个问题。

解析一个特殊页面的页面的过程似乎是这样的:

  1. 将{{特殊:MyExtRe}}替换为UNIQ-QUIU标记(因为特殊页输出预期已准备好输出HTML)
  2. 替换任何<标签>基努标记如上
  3. 从WiKiTeXT到HTML解析所有其他内容
  4. 全部替换基努标记以各自的存储值,在一次通过

解析页面的过程,该过程包括-特别的页面,显然是这样的:

  1. 将{{:正常文章名}或{{模板名}}替换为被遮挡页的内容(因为包含了未解析的WiKiTeXT的页)
  2. 替换任何<标签>基努标记如上
  3. 从WiKiTeXT到HTML解析所有其他内容
  4. 全部替换基努标记以各自的存储值,在一次通过

问题显然是在较早的情况下,对特殊网页维基文本的解析缺少最后的Kunu解码步骤(为什么?),所以所有基努标记未解码。(这可能是使用相同的语法来调用WiKiTeXT页面的一个剩余部分,它只是直接粘贴到宿主页面的WiKiTeX内容中并被解析,就像用来调用特殊页面的转换一样,根本不需要解析。无论代码在何处,决定“等待,这是一个特殊的页面——用一个Kunu替换它”,它应该在做Kunu替换之前做额外的非条带。

所以我做了以下几行:

$HTOUT = $WGPARSER>递归式分析器 $ITTEXT 

……我添加了这些行(第二个是因为第一个函数定义了它):

$HTOUT = $WGPARSER>麦克劳德>脱衣舞娘 $HTOUT 
$HTOUT = $WGPARSER>麦克劳德>无脱衣舞 $HTOUT 

既然我已经证明了这一点,当然,我现在会发现一个悲剧性的缺陷,并觉得很愚蠢…但只要它似乎在起作用,我必须在这里注意到。(重要的是要注意关于围绕1的工作的问题)。而且,我只使用MIDAWIKI1.1.1进行了测试。这个问题仍然存在于MW 1.14下,但是这个解决方案可能会或可能不起作用。——伍兹 18:26,2009年4月9日(UTC)

输出页->显示错误页()

显示错误页。论点美元头衔$MSG将关键字指定为$-> MSG.(),而不是文本。一个例子:

美元产量>显示页面 “错误” “坏错误” 
  • “错误”指的是文本“错误”.
  • “文字错误”指的是文本“此操作无法在此页上执行。”.

还可以指定消息对象或添加参数:

美元产量>显示页面 “错误” “坏错误” [ PARAM1 PARAM2 ] 
$消息对象 =  消息

美元产量>显示页面 “错误” $消息对象 
$TimeMaseObjor对象 =  消息
$消息对象 =  消息

美元产量>显示页面 $TimeMaseObjor对象 $消息对象 

PHBRQuest.PHP

这个WebREST类用于从GET和POST数组中获取信息。使用这个建议可以直接访问超全局,因为对象像MigICJEXCEL清洗一样有趣。请求上下文 .

数据库,PHP

MiTaWiKi具有与数据库交互的便利功能和包装器,使用Wikimdia\RDBMS数据库它也有一个有趣的负载平衡方案。建议你用这些包装纸。退房数据库,PHP 对于所有便利函数的完整列表,因为这些文档只会告诉您一些非显而易见的警告。手册:数据库访问 .

用户程序设计语言

这个用户类用于表示系统上的用户。“特殊页面”> GETUSER()应用于获取当前登录用户的用户对象。美元用户被贬低

PHP

标题表示wiki中页面的名称。这是有用的,因为MyaWiKi做了各种有趣的逸出和特殊情况下的逻辑到页面名称,所以不用滚动自己的转换标题到URL函数,而是用你的页面名称创建标题对象,然后使用FraceLoCalurl()获取该页面的URL。

若要从特殊页类的外部获取特殊页的标题对象,可以使用特殊页面::. 它会给你一个维基语言的本地化标题。

自定义特殊页面

有多种方法来提供您自己的特殊页面,而不是捆绑在MyaWiKi中:

  • 一种方法是安装一个扩展,生成一个表单来创建或编辑一篇文章。可以找到当前可用的扩展列表。类别:特殊页面扩展 .
  • 您还可以编写一个扩展,提供您自己的特殊页面。编写自己的扩展名需要PHP使用面向对象的设计和数据库的编码技巧和舒适性也很有帮助。您还需要知道如何使用代码来创建和编辑MyaWiKi文章。欲了解更多信息,请参阅这一讨论.
  • 您还可以通过JavaScript显示自定义页面,以代替默认错误消息“未知的特殊页面”(或“此页是故意留下空白”)的消息,如果使用子页面的话特殊:BlankPage在MyaWiKi:Cuff.js中,检查WGPAGENAMEY 然后隐藏MadiaWiKi生成的内容(只是AppDCSS){可见性:隐藏;}),并注入自定义HTML(内层HTML进入文档.GETelEnMyBID(“BoyDeCy内容”)文档.GETelEnMyByID(“MWX CraceLoad”). 例如,参见Meta:用户:Krkun/Tooal/实时新变化.

常见问题

设置扩展标题

MediaWiKi没有设置扩展名,这是开发者的工作。它将查找扩展名专题:专页被调用或加载特殊页面(特别是在注册之前)WF-特**()函数被调用。在…中函数执行(PAR)使用剖面$WGOUT标题扩展如下:$WGOUT-> SETPAGETITEL(“您的标题”);

可以找到扩展的地方(由传入特殊页面构造函数所指定的)是关键——除了因为它不是资本化的获取描述()内部使用的函数,找出特殊页面的标题(或它们称之为描述),斯特劳尔这个名字。“TasiSasoOrpRealPoad”的关键是“TISISACOOLPrimePipe”。

理论上,获取描述可以重载以避免与消息缓存进行交互,但源代码表示:“派生类可以重写这一点,但通常更容易保留默认行为。可以在运行时添加消息——参见MasaGeCase.php。此外,这会阻止MeaWiKi命名空间重载消息,如下所示。

扩展名本地化

所以你刚刚安装了一个闪亮的新MiaWiki扩展,并意识到:“哦,不,我的维基是法语,但页面显示为英语!”大多数人都不在乎,但实际上这是一个非常简单的任务(只要开发人员使用了在这个页面上解释的方法)。在源代码中没有面条。假设页面的名称是错误类型这个名字出现在“脏页列表”中,但你希望它是(和)原谅我可怜的法国人“阅读页面销售”。嗯,就这么简单:

  1. 引导到MyIaWiKi:DryType 此页可能不存在,但无论如何编辑它。
  2. 插入“Liste de页面销售”并保存

弗里亚(请原谅双关语)改变了。

这同样适用于在你的语言中定制你的wiki的标题:例如,开发人员把它称为“脏页列表”,但是你不喜欢这个名字,所以你把它重新命名为“需要清理的页面列表”。退房特殊:所有消息学习更多。

此外,如果扩展的文本块较大,如警告一样,不要直接输出文本。相反,将其添加到消息缓存中,当输出代码中的文本时,请执行以下操作:

$WGOUT>AdvWiTwitter $此>味精 “错误类型帮助”  

然后这个消息也可以定制。MyIaWiKi:脏类型帮助 .

也见帮助:系统消息.

限制页面访问

不要显示你的特殊页面专题:专页

有时,您可能希望通过移除特殊页来限制其可见性。专题:专页只让那些拥有特定权限的用户看到它。你可以做到这一点构造函数通过一个美元限制参数,例如“编辑接口”,默认情况下只分配给SysOP的权限;参见用户权利手册其他可用的用户权限。

功能 β-构造() {
	父母::β-构造 “我的扩展” “编辑界面”  /限制到系统
}

或者你可以创造你自己的权利安装文件并将其分配给SySOP,例如:

$WGCORPIPREST[“赛索普”]“好吧”] = 
美元价格[] = “我的扩展权”

然后用右边调用构造函数:

功能 β-构造() {
	父母::β-构造 “我的扩展” “我的扩展权” 
}

阻止访问您的特殊页面

即使您在构造函数中限制页面,如上所述,它仍然可以通过URL直接查看,例如在特殊:MyStimePage。$> >检查权限()执行方法

如果您需要对权限进行更细粒度的控制,则可以重写权限。$> >检查权限()和/或添加扩展所需的任何权限检查。

禁用特殊:UserLogin和特殊:用户注销页面

在LocalSettings.php,你可以使用特殊页钩 未定式不需要的内置特殊页面。“少许专用网页”如果你需要有条件的取消特定页面的特定用户组的设置。如果用户试图访问这些未设置的特殊页面,则显示了“您请求了一个无效的特殊页面”的一般消息。

美元挂钩[“特殊页面”列表[] = 功能  &清单  {
	未定式 清单[“用户注销”] 
	未定式 清单[“用户登录”] 
	退货 
};

添加日志

在MeaWiki中,用户对Wiki的所有动作都是为了透明和协作而跟踪的。手动:日志记录特殊:日志 至于怎么做。

更改群组专题:专页

如果您是扩展开发人员,则必须实现GETGROUPNAMEY()方法描述如下特殊页面组部分这个页面。

由于MeaWiWiKi 1.21,可以通过编辑A来重写特殊页组。系统消息. 这个方法不打算由扩展开发者使用,而是由站点管理员使用。该组名称必须放置在专页特殊页面组-<特殊页面名称>消息,在哪里<特殊页面名称>是小写中特殊页的规范名称(英文)。例如,如果要设置在“特殊:MyLITTLIPEPAGE”下显示的组专题:专页对于“MyLITTLE GROUP”,您只需创建“MiaTaWik:Apple PrimePosiPoGrand MyLITTLPAGE”,内容为“MyLITTLeGROUP”。“特殊:MyLITTLPAGE”将出现在“MyLITTLeGROUP”组下,您可以在“MeaWiki:Apple Posits MyLITTLE GROUP”下命名。
如果您想更改现有的特殊页面组,请查看特殊:特殊页面和USELang= QQX使用这些名字而不是“MyLITTLPAGE”。

也见

  • HTMLM在特殊页面中创建复选框、文本区域、单选按钮等教程