Пример #1
0
 /**
  * Get a breadcrumb
  *
  * Gets an array of pages representing a tree path to a current page.
  *
  * @param int $pageId
  * @return \Ip\Page[]
  */
 public function getBreadcrumb($pageId = null)
 {
     if ($pageId !== null) {
         $page = new \Ip\Page($pageId);
     } else {
         $page = ipContent()->getCurrentPage();
     }
     if ($page) {
         $pages[] = $page;
         $parentPageId = $page->getParentId();
         while (!empty($parentPageId)) {
             $parentPage = new \Ip\Page($parentPageId);
             $pages[] = $parentPage;
             $parentPageId = $parentPage->getParentId();
         }
     }
     $breadcrumb = array();
     if (!empty($pages)) {
         array_pop($pages);
         $breadcrumb = $pages;
     }
     $breadcrumb = array_reverse($breadcrumb);
     $breadcrumb = ipFilter('ipBreadcrumb', $breadcrumb);
     return $breadcrumb;
 }