У меня есть такая структура в бэкэнде October CMS (плагин статических страниц)
Page
-subpage 1
-subpage 2
-subpage 3
Я хочу иметь возможность связать дочерние страницы, чтобы перейти к следующей и предыдущей (если таковая существует).
Ничего не смог найти по этому поводу.
ХОРОШО. Это то, что у меня есть - не самое элегантное решение, но оно работает в части кода подстраницы! (должна быть проверка, если у страницы есть родитель, но в моей ситуации я использую только ссылки на подстраницы)
function onStart(){
// current page url
$parent = $this->page['apiBag']['staticPage']->getParent();
$url = $this->page['apiBag']['staticPage']['viewBag']['url'];
$currentPage = null;
$children = $parent->getChildren();
foreach( $children as $key => $page){
if($page['viewBag']['url'] == $url) $currentPage = $key;
}
// previous page
if ( array_key_exists($currentPage - 1, $children) ) {
$this['prev_url'] = $children[$currentPage - 1]['viewBag']['url'];
$this['prev_title'] = $children[$currentPage -1 ]['viewBag']['title'];
}
if ( array_key_exists($currentPage + 1, $children) ) {
$this['next_url'] = $children[$currentPage + 1]['viewBag']['url'];
$this['next_title'] = $children[$currentPage + 1]['viewBag']['title'];
}
}