模板中的Mediawiki魔术字或解析器功能可打印模板的名称?

时间:2019-04-22 18:34:28

标签: mediawiki mediawiki-extensions mediawiki-templates

此问题的上下文用于跟踪包含哪些模板的内容包含哪些内容。

似乎没有内置的功能可以做到这一点(请参见https://www.mediawiki.org/wiki/Help:Magic_words)。正如您在URL栏中看到的那样,其中大多数与页面标题有关。

以下是我要寻找的假设示例:

“ Template:Foo”的内容

stream
.assignTimestampsAndWatermarks(...)
.join(secondStream.assingTimestampsAndWatermarks(...))
.where(KeySelector...)
.equalTo(KeySelector...)
.window(TumblingEventTimeWindows.of(Time.minutes(1L))
.trigger(EventTimeTrigger.create())
.apply(new CustomJoin());

“示例页面”的内容

<includeonly>You transcluded Template:{{TEMPLATENAME}}</includeonly>

“示例页面”应该是什么样的:

{{Foo}}

使用{{PAGENAME}}或类似名称不起作用,因为这些人使用了要应用他们的当前页面。例如,如果Template:Foo使用{{PAGENAME}}而不是假设的{{TEMPLATENAME}},则示例页面的内容将为“您已包含Template:Example页面”,这是不正确的。

1 个答案:

答案 0 :(得分:2)

您只能通过解析框架访问它。 Scribunto扩展makes that available,如果不使用它,则必须write your own parser function(并使用SFH_OBJECT_ARGS选项对其进行声明,以便将帧传递给它)。