2013-10-31 85 views
1

我已完成我的mediawiki側欄,如下所示。mediawiki中的樹狀結構化側邊欄

*product1 
**Welcome 
**Introduction 
**User Guide 

*product2 
**Welcome 
**Introduction 
**User Guide 

我已經完成了這個使用向量擴展,但我的要求是有這樣的

*Product1 
**Welcome 
    ***Welcome1 
    ***Welcome2 
    ***Welcome3 
**Introduction 
    ***Introduction1 
    ***Introduction2 
    ***Introduction3 
**User guide 
    ***User guide1 
    ***User guide2 
    ***User guide3 

3模型層次的產品將有像歡迎,介紹,UserGuide, 歡迎3個鏈接將有歡迎1,WElcome2,歡迎,我想把這作爲第三層次在邊欄

+0

你現在想要什麼? – vijaykumar

回答

0

開箱即不可能有第三級。爲此,您將需要使用自定義外觀或創建擴展。

如果您知道一些PHP,您可以嘗試使用SkinBuildSidebar掛鉤來根據需要渲染側欄。

+0

我也在搞同樣的問題,我在想,我可以在頁面裏面有三個層次的樹結構嗎?我不想要目錄,有沒有擴展可以做到這一點? – anu

1

添加到LocalSettings.php

$wgHooks['SkinBuildSidebar'][] = "fnSidebarMultiLevel"; 
function fnSidebarMultiLevel(Skin $skin, &$bar) { 

    global $wgOut; 

    $sPanel = "* Product1 
** Welcome 
*** Welcome1 
*** Welcome2 
*** Welcome3"; 

    $bar = array("Nav" => $wgOut->parse($sPanel)) + $bar; 

} 

將在1.14及以上版本的工作。

+0

謝謝你的黑客,但它有一些問題:1.如果以相反的順序連接:'$ bar + array(「Nav」=> $ wgOut-> parse($ sPanel))出現'a「Nav」 2.文本對未經過認證的用戶也是可見的; 3.文字造型很糟糕。 – Paul

+0

@Paul 1.有什麼問題? 2.如預期的那樣3.與問題無關。 – hlcs

+0

'有什麼問題?':1.原始順序和相反順序的行爲不同。不知道如何在第一種情況下顯示「Nav」標題並將其隱藏在第二種情況下; 2.如果我想在「西里爾文」中顯示除「導航」之外的其他標題,我不知道如何執行此操作。 3.我不僅要展示文字,還要讓文字可以理解,美觀和實用(即如果有可視的可摺疊/可展開的水平,摺疊/展開應該真的有效)。看來我必須使用一些插件。 – Paul