社区文档构建中,欢迎编辑。 社区答疑群(非官方):717421103,点点小课堂(腾讯会议):5696651544

全站通知:

帮助:魔术字

来自WIKI实验室WIKI_BWIKI_哔哩哔哩
跳到导航 跳到搜索

魔术字(Magic words)是MediaWiki软件所识别的特定字符串,它们可以返回特定的值或触发其他的功能。魔术字有如下三种:

  • 状态开关:以两个下划线“__”为前后缀的大写单词。例如__NOTOC__
  • 系统变量:同模版类似,以被两个大括号括起来,且所有字母大写,如{{FOO}}
  • 解析器函数:这些形如{{foo:...}}{{#foo:...}}的魔术字在使用时包含参数,且函数名称对大小写不敏感(包括可大小写混用)。

状态开关

状态开关可以控制包括页面界面、页面行为等在内的各项内容,也可以用来要求页面提供需要的内容。

状态开关 描述
目录相关
__NOTOC__ 隐藏目录。
__FORCETOC__ 强制显示目录(即使各级标题总和不足4个)(覆盖__NOTOC__
__TOC__ 指定目录生成的位置(覆盖__NOTOC__)。多次插入使用时,目录会出现在文章中第一次出现该魔术字的位置。
编辑相关
__NOEDITSECTION__ 隐藏章节标题旁的编辑链接。 在模板中使用它将扩充对模板嵌入页面的影响,以及任何包含在同一页面的其他模板。
__NEWSECTIONLINK__ 在非讨论页顶端“编辑”标签右侧加入一个按钮,用于在页面结尾加入新的章节。
__NONEWSECTIONLINK__ 移除讨论页顶端“编辑”右侧的加入新章节链接。
分类相关
__NOGALLERY__ 令包含图片的分类页以普通链接形式列举图片,而不是通常的以缩略图图库形式。
__HIDDENCAT__ 用于分类页面。加入后此分类成为隐藏分类,将不会显示在上级分类其及成员页面的分类列表中(用户可以在设置#显示的“高级选项”中启用“显示隐藏分类”功能)
__EXPECTUNUSEDCATEGORY__ 在分类页面上使用,从特殊:未使用分类中删除分类。
语言转换相关
__NOCONTENTCONVERT__
__NOCC__
在语言有不同变体时(如中文简体和繁体),不对当前页面进行字词转换。比如只显示中文,而不是显示大陆简体、台湾繁体、新加坡简体和香港繁体。
__NOTITLECONVERT__
__NOTC__
在语言有不同变体时(如中文简体和繁体),不对当前页面进行标题转换(其他内容照常转换)。
其他相关
__INDEX__ 本开关可以要求外部搜索引擎索引页面(覆盖$wgArticleRobotPolicies设置但无法覆盖robots.txt设置,遵循$wgExemptFromUserRobotsControl设置
__NOINDEX__ 本开关可以要求外部搜索引擎不索引本页面(遵循$wgExemptFromUserRobotsControl设置
__STATICREDIRECT__ 仅在重定向页使用,当用户移动重定向页A所重定向的页面B到页面C时,用户可以选择“更新所有指向原始标题的重定向”,此时页面A的重定向将会更新到C;如若页面A使用本开关,将不会被更新重定向


系统变量

返回关于日期与时间、系统、页面的信息,其wikitext格式与模板非常相似,但是只有一部分系统变量接受参数。被标记为 [高开销] 的系统变量的使用将会被MediaWiki追踪,并且同一页面上能使用的高开销系统变量的数量是有限制的。
系统变量的结果有可能被缓存,此时使用“强制刷新页面”工具可能可以获得最新数据。

系统变量 示例输出 描述
日期与时间
(此类系统变量以系统服务器时区为准)
{{LOCALYEAR}}
{{CURRENTYEAR}}
2024
2024
当前年份
(日期与时间类系统变量可以将变量名的LOCAL换成CURRENT以使用UTC时区,下同)
{{LOCALMONTH}}
{{CURRENTMONTH}}
05
05
当前月份(补足前导零)
{{LOCALMONTH1}}
{{CURRENTMONTH1}}
5
5
当前月份(不补足前导零)
{{LOCALMONTHNAME}}
{{CURRENTMONTHNAME}}
5月
5月
当前月份(以当前语言月份名为内容)
{{LOCALMONTHNAMEGEN}}
{{CURRENTMONTHNAMEGEN}}
5月
5月
当前月份(以当前语言月份名的所有格为内容)
{{LOCALMONTHABBREV}}
{{CURRENTMONTHABBREV}}
5月
5月
当前月份(以当前语言月份名的缩写为内容)
{{LOCALDAY}}
{{CURRENTDAY}}
19
19
输出今天是几号(不补足前导零)
{{LOCALDAY2}}
{{CURRENTDAY2}}
19
19
输出今天是几号(补足前导零)
{{LOCALDOW}}
{{CURRENTDOW}}
0
0
输出今天是星期几(不补足前导零),以0-6代指,0指星期天,6指星期六
{{LOCALDAYNAME}}
{{CURRENTDAYNAME}}
星期日
星期日
输出今天是星期几(以当前语言星期数名为内容)
{{LOCALTIME}}
{{CURRENTTIME}}
16:15
08:15
当前时间(24小时制)(输出格式为“小时数:分钟数”,全部补足前导零)
{{LOCALHOUR}}
{{CURRENTHOUR}}
16
08
当前小时数(24小时制,补足前导零)
{{LOCALWEEK}}
{{CURRENTWEEK}}
20
20
输出当前第几周
{{LOCALTIMESTAMP}}
{{CURRENTTIMESTAMP}}
20240519161535
20240519081535
时间戳
站点技术元数据
{{SITENAME}} WIKI实验室WIKI_BWIKI_哔哩哔哩 站点名称(由$wgSitename设置)
{{SERVER}} https://wiki.biligame.com 站点域名URL(由$wgServer设置)
{{SERVERNAME}} wiki.biligame.com 输出子域名和域名(不再取决于$wgServer
{{DIRMARK}}
{{DIRECTIONMARK}}

输出站点默认语言所使用的Unicode文本方向控制字符(从左到右书写的语言使用‎,反之使用‏
{{SCRIPTPATH}} /tools 脚本(index.php、load.php、api.php等)相对路径(由$wgScriptPath设置)
{{STYLEPATH}} https://staticwiki.biligame.com/skins 皮肤样式相对路径(由$wgStylePath设置)
{{CURRENTVERSION}} 1.37.0 站点MediaWiki版本
{{CONTENTLANGUAGE}}
{{CONTENTLANG}}
zh-cn
zh-cn
站点默认界面语言(由$wgLanguageCode设置)
页面技术元数据(以本页面为例)
说明:
  1. 本部分系统变量接受一个额外参数,指定特定页面来代替当前页面的元信息:
    • {{PROTECTIONLEVEL: move | 首页}}
    • {{REVISIONID:首页}} → 46790
    但请注意:如果额外参数指定的页面不是当前页面时则属于 [高开销] 系统变量!
{{PAGELANGUAGE}}
{{#language:{{PAGELANGUAGE}}}}
zh-cn
中文(中国大陆)
返回当前页面的语言。此变量返回的语言代码可使用{{#language:...}}转换为语言名。
{{PAGEID}} 2501 当前页面ID
{{PROTECTIONLEVEL:edit}} 输出当前页面对指定操作的保护级别。若未保护则返回空字符串
{{PROTECTIONEXPIRY:edit}} infinity 输出当前页面对指定操作的保护时长,若时长无限则返回"infinity",否则返回结束时刻的时间戳
{{CASCADINGSOURCES}} [高开销] 输出在本页面生效的级联保护的来源页面。除非页面自我嵌入(例如在一个在<noinclude/>说明文本内嵌入自己的模板)且设置了级联保护,否则不会输出页面自身的名字
页面最新版本信息(以本页面为例)
说明:
  1. 本部分系统变量接受一个额外参数,指定特定页面来代替当前页面的元信息:
    • {{PROTECTIONLEVEL: move | 首页}}
    • {{REVISIONID:首页}} → 46790
    但请注意:如果额外参数指定的页面不是当前页面时则属于 [高开销] 系统变量!
{{REVISIONID}} 46767 页面最新版本的版本ID
{{REVISIONDAY}} 8 输出页面最新版本的修订日期是几号(不补足前导零)
{{REVISIONDAY2}} 08 输出页面最新版本的修订日期是几号(补足前导零)
{{REVISIONMONTH}} 05 页面最新版本的修订日期的月份(补足前导零)
{{REVISIONMONTH1}} 5 页面最新版本的修订日期的月份(不补足前导零)
{{REVISIONYEAR}} 2024 页面最新版本的修订日期的年份
{{REVISIONTIMESTAMP}} 20240508040730 页面最新版本的修订日期的时间戳
{{REVISIONUSER}} 123855714 页面最新版本的编辑者
{{REVISIONSIZE}} 21621 页面最新版本的wikitext源码的大小(单位:byte)
站点数据统计
说明:
  1. 本部分系统变量返回的数字往往包含分隔符(根据页面使用语言可能是逗号或空格),将参数1设为R可以得到无分隔号的数字(例如{{NUMBEROFPAGES}} → 2,088和{{NUMBEROFPAGES:R}} → 2088)。
{{NUMBEROFPAGES}} 2,088 站点页面个数
{{NUMBEROFARTICLES}} 108 内容名字空间下的页面个数
{{NUMBEROFFILES}} 162 已上传的文件个数
{{NUMBEROFEDITS}} 13,048 站点编辑次数
{{NUMBEROFUSERS}} 4,754,154 站点用户数量
{{NUMBEROFADMINS}} 16 管理员(sysop)数量
{{NUMBEROFACTIVEUSERS}} 10 活跃用户数量,活跃用户的标准与Special:活跃用户的一样
{{PAGESINCATEGORY:分类名称}}
{{PAGESINCAT:分类名称}}
148
148
[高开销] 输出指定分类中的页面总数(包括子类和文件)(以分类:帮助为示例)
  1. {{PAGESINCATEGORY:-{}-分类名称|all}}
  2. {{PAGESINCATEGORY:-{}-分类名称|pages}}
  3. {{PAGESINCATEGORY:-{}-分类名称|subcats}}
  4. {{PAGESINCATEGORY:-{}-分类名称|files}}
  1. 148
  2. 148
  3. 0
  4. 0
[高开销] 输出指定分类的:
  1. 所有页面数
  2. 所有非分类页和非文件页的页面数
  3. 所有子分类页面数
  4. 所有文件页面数

(以分类:帮助为示例)

{{NUMBERINGROUP:用户组}}
{{NUMINGROUP:用户组}}
8 ({{NUMBERINGROUP:bureaucrat}})
0({{NUMINGROUP:patroller}}
特定用户组中的用户总数
页面名称(以本页面为例)
说明:
  1. 本部分系统变量接受一个参数1,用于指定特定页面来代替当前页面的信息:
    • {{PAGENAME:-{}-Talk:提问求助区}} → 提问求助区
  2. 本部分系统变量可以通过在系统变量名后加一个E(例如{{PAGENAMEE:...}})来获得经过MediaWiki URL编码后的标题,这样的标题适合用于指向特定页面的链接中。
    注意{{PAGENAME:...}}{{PAGENAMEE:...}}{{urlencode:...}}有不同的实现方式,只有{{PAGENAMEE:...}}才能输出符合MediaWiki URL编码规则的标题,更细节的信息请参阅MediaWiki官网的Manual:PAGENAMEE encoding
警告:
  1. 部分系统变量会将页面标题的特定字符——例如单引号'、星号*——转义。
    例如,如果页面标题是L'Aquila,{{subst:PAGENAME}}保存后将会是L&#39;Aquila
    若要避免转义,一种简单的方法是使用{{#titleparts:}}解析器函数来处理标题。
{{FULLPAGENAME}} 帮助:魔术字 包含名字空间的完整页面标题
{{PAGENAME}} 魔术字 不包含名字空间的完整页面标题
{{BASEPAGENAME}} 魔术字 不包含名字空间和当前子页面标题的页面标题(例如:"Help:Title/foo/bar"返回"Title/foo")
{{SUBPAGENAME}} 魔术字 子页面标题(例如 "Help:Title/foo/bar"中的"bar")
{{SUBJECTPAGENAME}}
{{ARTICLEPAGENAME}}
帮助:魔术字
帮助:魔术字
返回该页面的本体的完整页面名。即使是在讨论页中也会返回本体页面名(例如在“Talk:提问求助区”页面中返回“提问求助区”)
{{TALKPAGENAME}} 帮助讨论:魔术字 返回该页面的讨论页的完整页面名(例如在“提问求助区”页面中返回“Talk:提问求助区”)
{{ROOTPAGENAME}} 魔术字 返回该页面的根页面的不含名字空间的页面名(例如:"Help:Title/foo/bar"返回"Title")
名字空间(以本页面为例)
说明:
  1. 本部分系统变量,{{NAMESPACENUMBER}},可以通过在系统变量名后加一个E(例如{{NAMESPACEE}})来获得经过MediaWiki URL编码后的分类。
  2. 本部分系统变量接受一个参数1,用于指定特定页面的名字空间来代替当前页面的名字空间(若不设置则默认使用当前页面的标题):
    • {{NAMESPACE:MediaWiki}} → (空)
    • {{NAMESPACE:Template:Main Page}} → 模板
    • {{TALKSPACE:Template:Main Page}} → 模板讨论
    如果参数1不为空,则该参数名只会被MediaWiki理解成一个页面名,即使填入的是一个名字空间名称,MediaWiki也会将其作为页面名处理:
    • {{SUBJECTSPACE:Help talk}} → (空)
{{NAMESPACE}} 帮助 当前页面名字空间名称
{{NAMESPACENUMBER}} 12 当前页面名字空间ID
{{SUBJECTSPACE}}
{{ARTICLESPACE}}
帮助
帮助
返回该页面的本体的名字空间名称
{{TALKSPACE}} 帮助讨论 返回该页面的讨论页的名字空间名称
其他
{{!}} | 返回一个管道符,它可以在模板嵌套表格或表格嵌套模板之时在被嵌套的表格/模板中代替管道符以免嵌套的模板/表格将其解析导致语法错乱,例如:
{|
|-
| {{colorblock{{!}}red}}
|}

更详细的信息请参阅MediaWiki网站文档

注释与外部链接