Extension:Disambiguator
发行状态: 稳定版 |
|
|---|---|
| 实现 | 特殊页面 |
| 描述 | 使用魔术字启用消除歧义页 |
| 作者 | Ryan Kaldari (Kaldari留言) |
| 最新版本 | 持续更新 |
| 兼容性政策 | 快照跟随MediaWiki发布。 master分支不向后兼容。 |
| MediaWiki | 1.28+ |
| PHP | 5.4+ |
| 许可协议 | MIT授權條款 |
| 下載 | |
| 帮助 | Help:Extension:Disambiguator/zh |
|
|
|
| 前往translatewiki.net翻譯Disambiguator扩展 | |
| 問題 | 开启的任务 · 报告错误 |
这个消歧义扩展被设计以用于更方便地以编程方式处理消歧义页。
它允许你使用 __DISAMBIG__ 魔术字 (或一个等价的别名)来标记所有的消歧义页,然后将它们标记在数据库中。
这允许其他扩展可选地将消除歧义页作为一个单独的页类来处理,尽管它们仍然被认为是“正常”页。
安裝
- 下载文件,并解压
Disambiguator文件夹到extensions/目录中。
开发者和代码贡献人员应改从Git安装此扩展,输入:cd extensions/ git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/Disambiguator
- 請新增下列代码到您的LocalSettings.php文件的底部:
wfLoadExtension( 'Disambiguator' );
- 按需求配置。
完成 – 請导航至您的wiki上的Special:Version,以验证此扩展已成功安装。
配置
可以从LocalSettings.php文件中设置以下配置变量。
- $wgDisambiguatorIndicateLinks - 是否为指向消歧义页面的链接添加 'mw-disambig' CSS 类(默认为 true )
- $wgDisambiguatorNotifications - 是否在 wikitext 编辑器中输入指向消歧义页面的链接时,提醒用户(默认为否)
功能
Disambiguator 扩展提供了以下功能:
- 通过
魔术字对消歧义页面实现自动识别__DISAMBIG__ - 为列出所有消歧义页面及链接至它们的页面提供了新的特殊页面
- 提供等价于上述特殊页面的新API以及一个查询一个页面是否为消歧义页面的API函数
- 修改Special:LonelyPages来忽略消歧义页面
- 修改Special:Random来忽略消歧义页面(需要MediaWiki 1.26.0)
- 如果VisualEditor被启用,允许通过页面属性接口将一个页面标记为消歧义页
- 如果VisualEditor被启用,显示一个页面是否为消歧义页或者不在链接检视器中
- 如果VisualEditor被启用,显示一个页面是否为消歧义页或者不在链接对话中
- 如果进行了配置,为指向消歧义页的链接添加一个CSS类“mw-disambig”(参见上面的#配置)
- 当链接到消歧义页时警告用户WikiEditor,并允许他们修复链接。
用法
在wiki上
一旦本扩展被安装,使用它的最好方式是向一个模板你添加魔术字__DISAMBIG__,然后将模板嵌入到所有消歧义页。
一旦这个魔术字就位,你的消歧义页在数据库内都会被赋予“消歧义”页面属性。 This property resides in the page_props table.
你还会有两个新的特殊页面
- Special:DisambiguationPages - 它会列出你Wiki上所有的消歧义页。
- Special:DisambiguationPageLinks - 它会列出你Wiki上所有链往消歧义页的页面。 (这是对旧有已弃用的Special:Disambiguations page的替换。)
使用API
使用下面API来列出所有消歧义页:
api.php?action=query&list=querypage&qppage=DisambiguationPages
使用下面API来列出所有消歧义页面链接:
api.php?action=query&list=querypage&qppage=DisambiguationPageLinks
注意在以MiserMode模式运行的wiki上(所有维基媒体基金会的wiki),DisambiguationPageLinks的特殊页面和API接口都有结果数量限制(一般为1000 - 5000)。
使用下面API来查看一个单独页面是不是消歧义页:
api.php?action=query&titles=Bug&prop=pageprops&ppprop=disambiguation
如果是一个消歧义页,其页面属性会包含“disambiguation”。 注意,消歧义页面属性如果存在,其值会被设为一个空字符串,所以小心不要把它当做布尔值来测试。
With Lua
For wikis with Scribunto installed, Disambiguator adds a isDisambiguationPage property to mw.title objects.
使用SQL
To see if an individual page is a disambiguation page, check the page_props table for the presence of a pp_propname = 'disambiguation'.
Pages that are not disambiguation pages will not have this pp_propname.
The pp_value isn't important.
SELECT page_title, pp_propname
FROM page
LEFT JOIN page_props ON pp_page = page_id AND pp_propname = 'disambiguation'
WHERE page_namespace = 0
AND page_title IN ('John', 'COVID-19') -- John is a disambiguation page on enwiki, COVID-19 is not
Possible future plans
- Add an option to hide disambiguation pages from:
Special:AllPages (task #9936), Special:PrefixIndex (task #11319), Special:WhatLinksHere (task #9935), Special:AncientPages (task #76287)
- Consider extending link dialog in wikitext editor with ability to detect disambigs in search results and pull a list of links
| 此扩展用于一个或多个维基媒体项目。 这可能意味着扩展足够稳定、运作足够良好,可以用在这样的高流量的网站上。 请在维基媒体的CommonSettings.php和InitialiseSettings.php配置文件中查找此扩展的名称以查看哪些网站安装了该扩展。 特定wiki上的已安装的扩展的完整列表位于Special:Version页面。 |
| 此扩展在以下wiki农场/托管网站和/或软件包中提供: |
- Stable extensions/zh
- Special page extensions/zh
- MIT licensed extensions/zh
- Extensions in Wikimedia version control/zh
- AncientPagesQuery extensions/zh
- ChangeTagsListActive extensions/zh
- EditPage::showEditForm:initial extensions/zh
- GetDoubleUnderscoreIDs extensions/zh
- GetLinkColours extensions/zh
- LinksUpdateComplete extensions/zh
- ListDefinedTags extensions/zh
- LonelyPagesQuery extensions/zh
- RandomPageQuery extensions/zh
- RecentChange save extensions/zh
- ShortPagesQuery extensions/zh
- WgQueryPages extensions/zh
- All extensions/zh
- Extensions used on Wikimedia/zh
- Extensions included in Canasta/zh
- Extensions included in Fandom/zh
- Extensions included in Miraheze/zh
- Extensions included in MyWikis/zh
- Extensions included in wiki.gg/zh
- Disambiguation extensions/zh
