2015-08-28 132 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