class. Then we check that there is an action ' show ' being called on that page using the function getAction() and that we can assign the current StaffMember . It's important to check these as only when these conditions are all true do we actually want to perform the comparison in the next line. This comparison returns ' current ' if the currently viewing StaffMember (assigned to $StaffMember ) is the same as this staff member (i.e. the instance of StaffMember that the function is currently running from). Note. Strangely it doesn't seem possible to assign Controller::CurrentPage() to a variable like $Controller , which is why we are calling it so many times. Breadcrumbs Finally we are going to ensure that when the breadcrumbs are drawn on our StaffPage_show , they correctly include the StaffMember and link to the StaffPage. Add this function to your StaffPage class in StaffPage.php : This function looks quite complex but is actually pretty strait forward. We grab the default Breadcrumbs, then if our getStaffMember() function returns a StaffMember (i.e. we are on a detail page) we break it up into an array of each section, make the last item into a link to the main StaffPage (it was just a string previously as SilverStripe thought that was the page we were on) then finally add another item onto the array with the value of the staff members name. Then we implode it all using the Breadcumb delimiter ( &raquo; by default) and return