2015-02-23 30 views
0

我想在側邊欄的「工具」部分中使用一個工具,該工具將讀者帶到Special:PrefixIndex/FULLPAGENAME,其中FULLPAGENAME被替換爲當前頁面的全名。例如,假設我在頁面Module:Citation/CS1上,那麼我需要側邊欄中名爲Subpages的工具,該工具將我帶到Special:PrefixIndex/Module:Citation/CS1。我所看到的(the mediawiki sidebar manual),我說:如何將Special:PrefixIndex/FULLPAGENAME添加到本地MediaWIki安裝中的工具箱中?

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 ')' and instead saw 'page'.,阻止我保存頁面。

回答

0

你的腳本缺少一個逗號,應該是

ModifySidebar('add', 'toolbox', 'Subpages', 'http://127.0.0.1/mediawiki/index.php/Special:PrefixIndex/', 'page'); 

當然,你將有實際ModifySidebar功能添加到。

替代做法: 儘管手冊中不推薦,你可以實際使用魔法的話,如{{FULLPAGENAME}}MediaWiki:Sidebar,所以加入這樣的事情應該工作:

*Special:PrefixIndex/{{FULLPAGENAME}}|subpages 

您可能會遇到儘管如此,仍然存在緩存問題。確保$wgEnableSidebarCache是關閉的LocalSettings.php(這是默認設置)

編輯:下面從TGR的評論也很重要:這會影響性能

+1

這將迫使側邊欄上的每個網頁瀏覽量這是重新分析對於任何獲得非平凡流量的網站來說,這可能是一個壞主意。 – Tgr 2015-02-25 07:48:36

相關問題