我有一个参数url
的模板(这很好,我可以输出它的值)。
我有一个插件,它也带有一个参数path
(当我对该值进行硬编码时这很好用。)
我想将{{{url}}}
值从模板传递到我的插件,但我无法实现。
以下是我的模板的代码:
'''Source code: ''' <MyPlugin path="{{{url}}}" .../>
在我的插件中,我转储了$ args参数的内容:
function MyPluginRender( $input, $args, $parser )
{
var_dump($args);
}
它输出:
array(2) {
["path"]=>
string(9) "{{{url}}}"
...
}
事实上,在某些地方似乎禁用了替换。我从这个页面http://en.wikipedia.org/wiki/Help:Template#Handling_parameters尝试了几个东西,但没有成功。
有什么想法吗?
答案 0 :(得分:0)
好的,似乎无法让引擎自动替换{{{template-parameter}}}
并将其传递给扩展参数。
但是,希望扩展函数的签名包含对Parser对象的引用,该对象或多或少是MediaWiki引擎。
然后,您可以评估变量的内容:
function MyPluginRender( $input, $args, $parser , $frame)
{
$resolved = $parser->recursiveTagParse( $args["template-parameter"], $frame );
var_dump($resolved);
}
HIH