MediaWiki扩展问题/建议
这里完全是初学者。我想在每个具有自定义操作的页面上创建一个新选项卡。单击后,它会将您带到一个新页面,该页面上有自定义HTML以及文本或原始文章 到目前为止,我可以创建一个新选项卡,并为其提供自定义操作MediaWiki扩展问题/建议,mediawiki,Mediawiki,这里完全是初学者。我想在每个具有自定义操作的页面上创建一个新选项卡。单击后,它会将您带到一个新页面,该页面上有自定义HTML以及文本或原始文章 到目前为止,我可以创建一个新选项卡,并为其提供自定义操作mycustomaction。我在这里粘贴到目前为止我所做的事情。请让我知道我是否使用了正确的挂钩等,以及实现此基本功能的更好方法是什么 到目前为止,对于他们的文档,我已经做到了: #Hook for Tab $wgHooks['SkinTemplateContentActions'][] = 'm
mycustomaction
。我在这里粘贴到目前为止我所做的事情。请让我知道我是否使用了正确的挂钩等,以及实现此基本功能的更好方法是什么
到目前为止,对于他们的文档,我已经做到了:
#Hook for Tab
$wgHooks['SkinTemplateContentActions'][] = 'myTab';
#Callback
function myTab( $content_actions) {
global $wgTitle;
$content_actions['0'] = array(
'text' => 'my custom label',
'href' => $wgTitle->getFullURL( 'action=mycustomaction' ),
);
return true;
}
#new action hook
$wgHooks['UnknownAction'][] = 'mycustomaction';
#callback
function mycustomaction($action, $article) {
echo $action;
return true;
}
这给了我一个错误:
没有这样的行动
URL指定的操作无效。您可能键入了错误的URL,或者使用了错误的链接。这也可能表明
您的插件所使用的软件中有一个错误,即我做错了什么:
$content\u actions['0']
应该是$content\u actions[]
(细微的挑剔)
$content\u actions
通过引用传递,它应该是functionmyTab(&$content\u actions){}
mycustomaction()
应该按照
if ( $action == ‘mycustomaction’ ) {
do stuff; return false;
}
else {
return true;
}
它应该使用$wgOut->addHTML()
而不是echo
非常感谢大家的帮助