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.

Archive

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo, simon_w

Reversed breadcrumbs as Page Title


Reply

2 Posts   1702 Views

Avatar
pinkdigital

23 November 2008 at 9:21pm Community Member, 7 Posts

Hi
On some sites that we have built we reverse the breadcrumbs to make the page title... so if the breadcrumbs for a page where "Web Solutions » E-Commerce" in the page title we would have "E-Commerce | Web Solutions | Site Name etc"

Is there a way to do this in SilverStripe without too much hassle.

Avatar
Willr

24 November 2008 at 6:37pm Forum Moderator, 5511 Posts

You can just go on the code from the Breadcrumbs() function (located in sapphire/core/model/SiteTree.php). Copy this code to your Page class in mysite/code/Page.php
and might be something like

public function ReservedBreadcrumbs($maxDepth = 20, $unlinked = false, $stopAtPageType = false, $showHidden = false) {
      $page = $this;
      $parts = array();
      $i = 0;
      while(
         $page
         && (!$maxDepth || sizeof($parts) < $maxDepth)
         && (!$stopAtPageType || $page->ClassName != $stopAtPageType)
      ) {
         if($showHidden || $page->ShowInMenus || ($page->ID == $this->ID)) {
            $parts[] = $page->Title;
         }
         $page = $page->Parent;
      }

      return implode(' | ', $parts);
   }

Then just try $ReservedBreadcrumbs in the template