起初我不确定如何在 MediaWiki 中进行高级操作的问题是否属于这里,但在阅读了常见问题并思考之后,我决定 wiki 标记与 HTML 和 CSS 一样是它自己的语言,如果这些欢迎在这里提问,希望这也是!如果我错了,请随时标记这个问题。更新:正如这个问题得到的 3 个观点所证明的那样,我想虽然它可能在 Stackoverflow 的规则之内,但在这个主题上可能没有太多的专业知识!我想我需要把这个问题带到官方论坛(不寒而栗)
问题
在我设置的 wiki 上,我设置了我的 MediaWiki,我有一个模板,可以输出动态创建的类别等内容。这意味着调用模板的页面将根据传递给模板的一些变量进行分类。动态生成的类别位于<includeonly>
块内,以防止模板页面本身获取类别。
问题是我随后将该页面嵌入到其他页面,这导致类别也被嵌入,现在第三页具有它嵌入的所有页面的所有类别。
我想以某种方式格式化模板,以便调用模板的页面将使用类别,但包含调用页面的任何页面都不会继承类别。
例子
这是我最好的设置示例。如果这还不够,我可以提供指向我的真实示例的链接。
Template:Food
一个页面,它接受几个变量并输出一个解释食物的高度格式化的块,包括输出基于“类型”变量的类别。
Banana
此页面使用一些变量调用Template:Food
模板,包括type
set to "fruit"
。结果是,当用户查看“ Banana
”页面时,他们会得到一个格式精美的页面,其中包含有关水果的一些基本信息。此外,如果用户转到该Category:Fruit
页面,他们将看到列出的 Banana 页面。
Banana Nut Bread Recipe
这是问题页面。在这个食谱页面上,作者想要嵌入所有的成分页面,以便每种成分都列在其格式良好的块中。但是,当他使用 嵌入Banana
页面时{{:Banana}}
,Fruit
类别也随之被嵌入,现在该Banana Nut Bread Recipe
页面被列为Fruit
错误的类别。