Создаем сниппет: submenu
Используем в шаблоне так:
<?php
function snippet_submenu() {
// get the current subpages
$pages = Page::children(Pages::$requested_page);
// try to get the parent
if ( ! isset($pages)) {
$current_page = Pages::$requested_page;
$parent_page = '';
if ($current_page !== 'error404') {
$page = Pages::$pages->select('[slug="'.$current_page.'"]', null);
// try again if we have a parent
if (trim($page['parent']) !== '') {
$parent_page = Pages::$pages->select('[slug="'.$page['parent'].'"]', null);
$pages = Pages::$pages->select('[parent="'.(string)$parent_page['slug'].'"]', 'all');
}
}
}
return $pages;
}
$sub_pages = snippet_submenu();
if (isset($sub_pages)) {
?>
<ul class="nav nav-pills">
<?php
foreach($sub_pages as $page) {
$li_class_active = '';
if (Pages::$requested_page == $page['slug']) $li_class_active = ' class="active"';
?>
<li<?php echo $li_class_active; ?>><a href="<?php echo Site::url() . $page['parent'] . '/' . $page['slug']; ?>"><?php echo $page['title']; ?></a></li>
<?php
}
?>
</ul>
<?php
}
?>
Используем в контенте так:{snippet get="submenu"}
Используем в шаблоне так:
<?php
echo Snippet::get('submenu');
?>
Автор сниппета: antiben