跳转到内容

Module:Page name/doc

轻之舟百科,让知识轻装启航

这是Module:Page name的文档页面

本模块用于生成一个对某个页面(或当前页面)的一个描述性的词语。比如,在模板页面(如Template:Fullurl)返回“模板”,在用户页面(如User:Example)返回“用户”。此外,对于模板和模块文档,还会返回“模板文档”或“模块文档”。

指定页面

[编辑源代码]

你可以使用参数title指定一个页面的标题,如果不指定标题,将会默认为当前页面标题。例如:

  • {{#invoke: page name|main}}返回:模块文档
  • {{#invoke: page name|main|title=Template:Tlx}}返回:模板
  • {{#invoke: page name|main|title=火山}}返回:条目
  • {{#invoke: page name|main|title=特殊:展开模板}}返回:特殊页面
  • {{#invoke: page name|main|title=user talk:MediaWiki default}}返回:用户讨论页

指定命名空间

[编辑源代码]

你可以使用参数namespace指定显示特定命名空间的页面名称。命名空间可以根据其名称、别称或id来指定。这种情况下,不会检测/doc。例如:

  • {{#invoke: page name|main|namespace=114514}}返回:页面
  • {{#invoke: page name|main|namespace=Template}}返回:模板
  • {{#invoke: page name|main|namespace=828}}返回:模块

指定繁简转换

[编辑源代码]

一般地,模块会返回简体中文,并通过繁简转换系统转换为你当前看到的语言变种(如果需要转换的话)。但是某些消息页面,不支持繁简转换,需要手动转换为简体或繁体,可以设置参数variant=-1以强制显示简体,variant=1以强制显示繁体,variant=2以强制显示台湾繁体,这在消息页面中会比较实用。

代码 结果(未转换) 结果(已转换)
{{#invoke: page name|main}} -{zh-hans:模块;zh-hant:模組}--{zh-hans:文档;zh-hant:文件}- 模块文档
{{#invoke: page name|main|variant=1}} 模組文件 模組文件
{{#invoke: page name|main|variant=-1}} 模块文档 模块文档
{{#invoke: page name|main|title=Template:Tl/doc}} 模板-{zh-hans:文档;zh-hant:文件}- 模板文档
{{#invoke: page name|main|title=Template:Tl/doc|variant=1}} 模板文件 模板文件
{{#invoke: page name|main|title=Template:Tl/doc|variant=-1}} 模板文档 模板文档
{{#invoke: page name|main|title=User talk:Example}} -{zh-hans:用户;zh-hant:用戶;zh-tw:使用者}-讨论页 用户讨论页
{{#invoke: page name|main|title=User talk:Example|variant=1}} 用戶討論頁 用戶討論頁
{{#invoke: page name|main|title=User talk:Example|variant=-1}} 用户讨论页 用户讨论页

不检查文档

[编辑源代码]

如果需要表述到模板或者模块本身,而不需要检查页面是否为文档,可以添加一个doc=false,例如:

代码 效果
模板链接:{{#invoke:page name|main|title=Template:Tl/doc}} 模板文档
模板链接:{{#invoke:page name|main|doc=true|title=Template:Tl/doc}} 模板文档
模板链接:{{#invoke:page name|main|doc=false|title=Template:Tl/doc}} 模板

函数用法

[编辑源代码]

如需在Lua模块中使用此功能,应该使用类似于如下语法:

local pageName = require'Module:Page name'.pageName

local page
-- 如果需要获取当前页面的表述
page = pageName()

-- 如需获取特定页面(以User talk:Example为例)的表述
page = pageName(mw.title.new'User talk:Example')

-- 如需获取特定语言变种(以简体中文为例)的表述
page = pageName(nil, -1)

-- 如需获取特定页面(以Template:消息框/doc为例)的特定语言变种(以繁体中文为例)的表述
page = pageName(mw.title.new'Template:消息框/doc', 1)

从上面的示例可以看出,两个参数都是可以省略的,第一个参数表示页面标题对象(默认为当前页面标题对象),第二个参数为语言变种(默认为0,即不指定)。

此外,如果只需要获取指定命名空间的页面名称,可以直接使用

local namespacePageName = require 'Module:Page name'.namespacePageName

该参数的第一个参数为命名空间的名称或者id(若为id,应该是数字而不是用字符串)。