Php 模板变量替换
我有一个模板,带有一个参数Php 模板变量替换,php,mediawiki,wiki,mediawiki-templates,Php,Mediawiki,Wiki,Mediawiki Templates,我有一个模板,带有一个参数url(这很好,我可以输出它的值) 我有一个插件,它还接受一个参数路径(当我硬编码该值时,它可以正常工作) 我想将{{{{url}}}值从模板传递到我的插件,但我无法实现 以下是我的模板的代码: '''Source code: ''' <MyPlugin path="{{{url}}}" .../> 它输出: array(2) { ["path"]=> string(9) "{{{url}}}" ... } 事实上,在某些地方,替代似乎
url
(这很好,我可以输出它的值)
我有一个插件,它还接受一个参数路径
(当我硬编码该值时,它可以正常工作)
我想将{{{{url}}}
值从模板传递到我的插件,但我无法实现
以下是我的模板的代码:
'''Source code: ''' <MyPlugin path="{{{url}}}" .../>
它输出:
array(2) {
["path"]=>
string(9) "{{{url}}}"
...
}
事实上,在某些地方,替代似乎是无效的。我尝试了这个页面上的一些东西,但没有成功
有什么想法吗?好的,看来引擎不可能自动替换
{{{{{template parameter}}}
并将其传递给扩展参数
但是,希望扩展函数的签名包含对解析器对象的引用,该解析器对象或多或少是MediaWiki引擎
然后,您可以评估变量的内容:
function MyPluginRender( $input, $args, $parser , $frame)
{
$resolved = $parser->recursiveTagParse( $args["template-parameter"], $frame );
var_dump($resolved);
}
HIH我认为这取决于
MyPlugin
标记是否注册为解析器函数等等。
function MyPluginRender( $input, $args, $parser , $frame)
{
$resolved = $parser->recursiveTagParse( $args["template-parameter"], $frame );
var_dump($resolved);
}