Javascript 如何将Special:PrefixIndex/FULLPAGENAME添加到本地MediaWIki安装的工具箱中?
我想在侧边栏的“工具”部分使用一个工具,将读者带到特殊:PrefixIndex/FULLPAGENAME,其中FULLPAGENAME将替换为当前页面的全名。例如,假设我在Module:引文/CS1页面上,那么我希望侧边栏中有一个名为Subpages的工具,它可以将我带到Special:PrefixIndex/Module:引文/CS1。我看到并补充说:Javascript 如何将Special:PrefixIndex/FULLPAGENAME添加到本地MediaWIki安装的工具箱中?,javascript,mediawiki,Javascript,Mediawiki,我想在侧边栏的“工具”部分使用一个工具,将读者带到特殊:PrefixIndex/FULLPAGENAME,其中FULLPAGENAME将替换为当前页面的全名。例如,假设我在Module:引文/CS1页面上,那么我希望侧边栏中有一个名为Subpages的工具,它可以将我带到Special:PrefixIndex/Module:引文/CS1。我看到并补充说: function CustomizeModificationsOfSidebar() { // Adds PrefixIndex
function CustomizeModificationsOfSidebar() {
// Adds PrefixIndex
var page = mw.config.get( 'wgPageName' );
ModifySidebar( 'add', 'toolbox', 'Subpages', "http://127.0.0.1/mediawiki/index.php/Special:PrefixIndex/"'page' );
}
jQuery( CustomizeModificationsOfSidebar );
转到MediaWiki页面:Common.js。这就产生了JavaScript错误:error:Expected,而是看到了“page”。这使我无法保存该页 您的脚本缺少逗号,应该是
ModifySidebar( 'add', 'toolbox', 'Subpages', 'http://127.0.0.1/mediawiki/index.php/Special:PrefixIndex/', 'page' );
当然,您必须将实际的ModifySidebar函数添加到
备选办法:
尽管本手册中不推荐使用,但实际上您可以在MediaWiki:Sidebar中使用神奇的单词,例如{{FULLPAGENAME}},因此添加类似的内容应该可以:
*Special:PrefixIndex/{{FULLPAGENAME}}|subpages
不过,您可能会遇到缓存问题。确保在LocalSettings.php中处于关闭状态,默认情况下为关闭状态
编辑:下面来自Tgr的评论也非常相关:这将影响性能,这将迫使侧边栏在每个页面视图上重新分析,这对于任何获得非平凡流量的站点来说可能是个坏主意。