/**
  * @param Section $section
  */
 protected function addBreadcrumb(Section $section)
 {
     if ($section->isRoot()) {
         return;
     }
     if (!is_null($parent = $section->getRootSection())) {
         $this->addBreadcrumb($parent);
     }
     $this->breadcrumbs->add($section->getName(), $section->getUrl());
 }
 /**
  * @param $title
  * @param string|null $url
  * @return $this
  */
 protected function setTitle($title, $url = NULL)
 {
     $this->breadcrumbs->add($title, $url);
     return parent::setTitle($title);
 }
 /**
  * @param int $level
  * @return Breadcrumbs
  */
 public function getBreadcrumbs($level = 0)
 {
     $crumbs = Breadcrumbs::factory();
     if (($parent = $this->getParent()) instanceof FrontendPage and $this->level > $level) {
         $this->getParent()->recurseBreadcrumbs($level, $crumbs);
     }
     $crumbs->add($this->getBreadcrumb(), $this->getUrl(), true, null);
     return $crumbs;
 }