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 /

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Setting the selected state for a static menu

Go to End

2 Posts   1776 Views


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>


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"';