在最近的MediaWiki中,似乎无法在补充工具栏中启用wikitext,至少在Vector Skin中是这样。 Wikitext允许更高级的格式化和图像插入。
我找到的唯一解决方案是安装CustomNavBlocks扩展(http://www.mediawiki.org/wiki/Extension:CustomNavBlocks),但在MonoBook皮肤中,这会强制侧边栏内每个框内的图像。
是否有更好的方法可以为所有皮肤全局启用wiki文件?
答案 0 :(得分:1)
补充工具栏完全是皮肤的责任,因此实际上无法保证在所有皮肤中修改其行为。
但是,大多数皮肤(以及所有内置的)都在渲染侧边栏时调用SkinBuildSidebar
挂钩,因此构建扩展以修改侧边栏的一种方法是在那里添加一些解析器,处理一些你为此目的而发明的额外标记。
答案 1 :(得分:0)
$wgHooks["SkinBuildSidebar"][] = "fnSidebarMultiLevel";
function fnSidebarMultiLevel(Skin $skin, &$bar) {
global $wgOut;
$title = Title::makeTitle(NS_MEDIAWIKI, "Sidebar-Custom");
if ( !$title->exists() )
return true;
$text = WikiPage::factory($title)->getContent()->mText;
$firstValue = reset($bar);
$firstKey = key($bar);
unset($bar[$firstKey]);
$bar = array(
$firstKey => $firstValue,
"Custom" => $wgOut->parse($text)
) + $bar;
return true;
}
将wikitext添加到wiki.com/wiki/MediaWiki:Sidebar-Custom
。 "自定义"块将是第二个。