【发布时间】:2013-02-02 01:25:55
【问题描述】:
我如何编写一个 MediaWiki 扩展程序和/或模板,将其嵌入到 wiki A 的页面 X 中,在另一个 wiki 中对 A:X 的所有引用,就像法语维基百科中的一个页面能够显示一个包含所有引用的列表是英文版的吗?
提前感谢您的任何建议和指导。
除了上述之外,我还检查了 MW API 文档,发现查询操作有一个 iwbacklink 值,其中列出了所有跨维基反向链接。此查询返回一个 XML 文件,其中包含 A 中指向页面 X 的所有链接的列表:
wikiA.com/api.php?action=query&list=iwbacklinks&blimit=50&blnamespace=0&bltitle=MY_PAGE_X
虽然这会返回一个与 JSON 相同的数据:
wikiA.com/api.php?format=json&action=query&list=iwbacklinks&blimit=50&blnamespace=0&bltitle=MY_PAGE_X
在 Wiki B 上显示任一输出之前,必须对其进行解析和格式化,这在 PHP 中很容易做到。我现在只需要弄清楚如何将 php 脚本的输出包含到 MW 页面中。整体结果应该是这样的:
LOREM IPSUM
Lorem Ipsum camem latina est quod usata ad interetem paginam subconstructa。
Wiki A 中链接到该页面的页面列表:
1) 卡米娜·布拉纳 2) 卡提林那 3) De Bellum Gallum
我的意图当然是在调用页面时自动创建小节。
我感谢 mario 和 svick 的建议,并欢迎其他人。
【问题讨论】:
-
它适用于维基百科,因为所有语言共享一个数据库集。要注意远程 wiki 链接,您将不得不求助于抓取或记录引用者。没有出现用于在各种 wiki 引擎之间交换反向链接的通用 API。
-
@mario 它在维基百科上有效吗?你有链接吗?我不知道有什么工具可以跟踪不同项目之间的链接。
-
@svick:尝试使用toolserver.org/~merl/reverselanglinks 作为外部工具。此外,由于 WikiData 跨维基链接在 wiki 之间共享并且可以轻松跟踪。