2015-08-28 106 views
2

如何更改默認的Silverstripe主題「簡單」,以便在單擊子菜單(在側欄上)時通過$ Breadcrumbs將側欄菜單替換爲麪包屑菜單。例如被點擊菜單1的情況下,側邊欄顯示Silverstripe菜單,子菜單和麪包屑導航

 Menu1 Menu2 Menu3 

菜單1(未點擊,只是一個標題) SubMenu1 SubMenu2

但當任一SubMenu1或SubMenu2被點擊整個側邊欄自敗和一個$麪包屑是所示。

 Menu1 Menu2 Menu3 

菜單1 - > SubMenu1 $內容

因此在麪包屑點擊菜單1時,它可以追溯到菜單1。

回答

0

首先,你爲什麼要實現這個目標?我看不到一個真正的好處在這裏,但如果你真的需要這個,所以這可能是一個可能的答案:

1)如果您是在$Menu(1)水平只顯示$MenuTitle.XML(或只是$Title,他們在側邊欄

2)否則如果你在$Menu(2)或更深(2)水平顯示麪包屑

你可以通過查看哪個級別你在此刻實現這一目標,並顯示你所需要的幾乎是相同的) :

<% if $Menu(1) %> 
    <!-- Here you print only titles--> 
    <% loop $Menu(1) %> 
    <a href="$Link">$MenuTitle.XML</a> 
    <% end_loop %> 
<% else %> 
    <!-- Here you print out the BreadCrumbs, only if you are deeper than 1st level menu --> 
    <% include $BreadCrumbs %> 
<% end_if %> 

在這裏,你檢查,如果你是第一級然後只顯示標題的鏈接,那麼如果你是子頁面顯示BreadCrumbs