问题标签 [mediawiki-templates]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
14302 浏览

templates - 我在哪里可以获得 MediaWiki 的模板?

我注意到很多基于 mediawiki 的网站都使用 Robelbox、Ambox 等模板。我在哪里可以获得它们以及应该如何安装它们?

0 投票
3 回答
874 浏览

php - MediaWiki 自定义皮肤:检查当前页面是否为主页

我在一个代码库上设置了一堆不同语言的 mediawiki。到目前为止,大部分都在工作,但我想使用一个看起来与其他页面不同的主页。为此,我最初只是添加了一些仅适用于 main_page 类的 CSS 规则:

问题是在其他语言中,主页的调用方式不同(并且类会相应更改),因此我要么必须为所有可能的主页标题添加 css 规则(不会发生),要么在皮肤内部进行检查以添加如果当前页面是主页面,则归类到正文。

不幸的是,没有办法检查。我搜索的大多数解决方案都基于“主页”或设置您自己的标题。我希望皮肤自动检测标题。

到目前为止,我想到的唯一解决方案是将 mediawiki 的变量作为主页 url 并将其与当前页面标题进行比较:

(['href'] 以 /wiki/ 开头,因此偏移量为 6)

然后

(当然还有更多的课程,但你明白了)

但这给了我另一个问题。在西班牙语中,该页面称为 Página Principal。数据['thispage'] 没有问题,但 ['href'] 保存为 /wiki/P%C3%A1gina_Principal

所以......谁能告诉我如何 1. 以当前使用的语言查找“主页”的翻译或 2. 将 P%C3%A1gina_Principal 转换为 Página Principal(以及其他语言的类似语言)或 3 . 告诉我另一种方法来检查我是否在主页上?

0 投票
3 回答
928 浏览

java - Dbpedia 提取框架 - 如何剥离 mediawiki 格式标记

我正在玩 dbpedia 提取框架。看起来很不错,我很高兴构建维基百科页面的 AST 并提取链接(使用 WikiParser)。然而,虽然我从解析中得到了一个很好的结构化树,但我注意到文本节点仍然包含许多格式标记(例如,用于斜体、粗体等的撇号)。出于我的目的,这些没有帮助 - 我只想要纯文本。

我可以花一些时间编写自己的代码来删除它,但我假设这样的东西对 dbpedia 很有用 - 并且它存在于库中的某个地方。我对吗?如果是这样 - 剥离到裸文本的额外功能在哪里?

否则 - 有没有人知道任何其他(最好是 scala)包来去除 mediawiki 标记?

编辑

应要求提供更多详细信息。以下标记:

来自 dbpedia 作为 TextNode 的内容,但未触及。我希望能够将其剥离为:

或者可能是一个更结构化的 AST,其附加节点表示原始文本的每个部分,可能(在每个节点上)用要应用的格式类型(例如斜体、粗体等)进行注释。

事实上,dbpedia 解析的最终结果仍然充满了标记。

希望有帮助。

0 投票
1 回答
1596 浏览

mediawiki - 如何让维基百科模板与 MediaWiki 一起使用

我导出了维基百科的一个类别,检查了包含模板,然后将其导入到 MediWiki 安装中,但是所有页面都搞砸了如何获取所有必要的模板以使页面正确显示?

0 投票
1 回答
247 浏览

templates - Mediawiki 多级嵌入

我正在使用 Mediawiki 尝试格式化一些文章,以便它们在逻辑上一起流动。这是我得到的:

模板 A 是基础模板

页面 B 是使用模板 A 的页面

页面 C 是包含页面 B 的一部分的页面

我在模板 A 中有:

在页面 B 中:

C页:

结果:

我在页面 C 上得到了预期的结果,这是页面 B 的“角色”部分。

我不想要的部分是页面 B 现在只有模板 A 的“角色”部分。

期望:

我希望页面 B 显示模板 A 的所有内容,而页面 C 仅包含我感兴趣的页面 B 的部分。除了放置页面 B 的每个实例(模板 A 被制作为一个...模板...对于页面 B 的所有变体),当页面 B 被嵌入时,我如何使用模板(模板 A)来做到这一点?甚至可能吗?

0 投票
1 回答
344 浏览

javascript - wikimedia api 从 json 字符串中获取相关数据

这是我昨天问的问题。我能够获得所需的数据。最终的数据是这样的。请点击此链接

我尝试使用以下代码获取所有信息框数据

我最初认为每个元素都包含在 {{ }} 中。所以我写了这段代码。但我看到的是,我无法用这个获得整个信息框数据。有这个元素

发生这会结束我的信息框数据。

不使用 json 似乎要简单得多。请帮我

0 投票
1 回答
73 浏览

mediawiki - 如何强制 MediaWiki 评估具有高优先级的函数?

我在“选择时显示”表单中的默认标签存在持久性问题。

字段默认为“{{#show SomePage | ?SomeAttribute}}”和“{{#show SomeOtherPage | ?SomeOtherAttribute}}”,而不是评估#show 命令。

无论如何,我如何强制 MediaWiki 评估 #show 函数?

0 投票
1 回答
224 浏览

javascript - 如何使我的维基时钟动态化?

如何使http://torwiki.com/page/User:Technical_13/SandBox#Dynamic_Clock上的时钟动态显示多个时区的实际当前时间......我是管理员,所以我可以访问 MediaWiki: common.js,已激活。我已经阅读了显示单个时钟的教程,但是如何使它与多个时钟一起工作?我希望能够创建一个允许我定义时区的模板,并让它显示该时区的当前时间。我可以<span>用一个 id 或名称将它包装起来以标识我想要的时区,但我如何让它适用于多个时钟。请记住,使用 MediaWiki 风格的 wiki,我不能为每个实例嵌入任何 javascript 调用。

0 投票
3 回答
264 浏览

python - 如何使用正则表达式获取特定的易嵌套块内容

我想从维基百科中提取信息框块。下面是一个示例输入文件:

我希望解析结果返回两个 Infobox 块:

任何人都知道如何在 python 中使用正则表达式来实现这一点?

0 投票
1 回答
487 浏览

mediawiki - mediawiki 模板源中的源代码混乱

刚开始使用媒体维基,但我有一个奇怪的问题。

我想复制一个简单的模板“模板:注意”,所以我访问:

Mediawiki 模板链接

它向我的浏览器显示的模板代码是:

不,我没有复制粘贴错误,这就是它所显示的。语法错误..| 在错误的地方,一般语法不正确。当然,如果我复制粘贴它不起作用,我必须手动更正语法。

如果我尝试从特殊页面导出它,就会发生这种情况。

为什么会这样?