Сниппет next_prev

Опубликовано: 25 Фев 2018

Маленький сниппет, который покажет предыдущий и следующий элемент, например, в разделе новостей.

Вызов сниппета [ [next_prev]]

Код сниппета

<?php
$ID = $modx->documentIdentifier;
$parentId = array_pop($modx->getParentIds($modx->documentIdentifier,1));
$children = $modx->getActiveChildren($parentId,'menuindex','ASC');
$i=0;
$key = false;
while(!$key && $i<count($children)){
  $key = array_search($ID,$children[$i]);
  $i++;
}
if(!empty($key) && count($children)>1){
$placeholders = array(
'prev'=>($i-2>=0?'<a class="a-i" href="'.$modx->makeUrl($children[$i-2]['id']).'"> < Предыдущая новость</a>':''),
'next'=>($i<count($children)?'<a class="a-i" href="'.$modx->makeUrl($children[$i]['id']).'">Следующая новость > </a>':'')
);
$output = $modx->parseChunk('prevnext',$placeholders,'[+', '+]');
}
return $output;

Чанк prevnext

[+prev+]  [+next+]

Комментарии (0)


Оставить комментарий




Разрешённые теги: <b><i><br>Добавить новый комментарий: