将 MediaWiki 模板参数传递给自定义 HTML 属性

Passing down MediaWiki template arguments to custom HTML attributes

考虑添加一个名为 simplified_example 的新标签和一些 JavaScript 的自定义 MediaWiki 扩展(为简单起见,只需使用提供的参数调用 alert):

<?php
if ( ! defined( 'MEDIAWIKI' ) ) die();

$wgExtensionFunctions[] = 'registerTags';
$wgExtensionCredits['parserhook'][] = array(
    'name' => 'myTags',
);

function registerTags() {
    global $wgParser;
    $wgParser->setHook('simplified_example', function ($input, $argv, $parser, $frame) {
        $output = $parser->recursiveTagParse($input, $frame);
        $title = $argv["value"];
        return "<div onclick=\"alert('$title')\">$output</div>";
    });
}
?>

使用它我可以将以下代码放入 MediaWiki 页面源代码中:

<simplified_example value="Testing">...</simplified_example>

这导致 ... div 可点击 - 显示一个包含所提供文本的消息框。现在我想把这个标签放在模板中,像这样:

<simplified_example value="{{{1}}}">...</simplified_example>

当我将此模板放入 MediaWiki 页面时:

{{TestTemplate|Testing...}}

我再次获得可点击的 ... 但显示的消息未被评估并且显示 {{{1}}} 而不是提供 Testing....

如何通过模板将 MediaWiki 页面源中的参数传递到我的自定义标签?

尝试在模板中使用 #tag 函数而不是 html,如下所示:

{{#tag:simplified_example|value={{{1}}} }}