Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

Customising the CMS /

Setting the selected state for a static menu


Reply


2 Posts   1369 Views

Avatar
pingu

Community Member, 75 Posts

9 March 2009 at 2:05am

Edited: 09/03/2009 2:05am

Hi guys,

Another question from a silverstripe novice :)

I've got a website for which I need to define static navigation in the templates - reason being that the design shows 3 levels of navigation, however they are all 1st level nav items. That is - they are all important pages but are grouped in 3 different styles of navigation across the design - they are each their own section and not nested within anything else.

My question is, if I have set them up as static navigation items in the page template, is there a way I can apply logic within these items to set the current items state to selected? I'm not sure how to use conditions within HTML elements in templates.

What I would like to achieve is something like this:

<li <% if $URLSegment == "about us" class="selected" ><a href="/about-us">About Us</a></li>

Avatar
pingu

Community Member, 75 Posts

10 March 2009 at 2:00am

Have solved this by adding a function to the PageControllor:

function IsSelected($section){
      if($section == $this->CurrentPage())
         return 'class="selected"';
   }