У меня есть блог, созданный в modx Revolution с использованием статьи, но у меня возникли проблемы с настройкой некоторых частей нумерации страниц. Мой текущий вызов разбивки на страницы выглядит так:
[[!+page.nav:notempty=`<nav>[[!+page.nav]]</nav>`]]
Я добавил следующие параметры листинга к вызову getPage, чтобы удалить шаблон [[+ first]] и [[+ last]] из разбивки на страницы, и вставить статическую ссылку «вернуться к началу»:
&pageNavOuterTpl=`[[+prev]]<a href="#header">Back to top</a>[[+next]]`
Однако одна вещь все еще не работает, как я предполагал. По умолчанию ссылки previous
и next
исчезают, если нет предыдущей или следующей страницы. Однако в таком случае я бы предпочел отобразить их и сделать неактивными. Таким образом, разбивка на страницы всегда будет выглядеть одинаково, но неактивные части могут быть выделены серым цветом.
Похоже, что include.getpage.php содержит следующие строки (которые не позволяют отображать предыдущие и следующие ссылки, когда нет страниц для перехода):
// lines 16 - 18
if (!empty($pagePrevTpl) && ($page - 1) >= 1) {
$nav['prev'] = getpage_makeUrl($modx, $properties, $page - 1, $pagePrevTpl);
}
// and lines 29 - 31
if (!empty($pageNextTpl) && ($page + 1) <= $pageCount) {
$nav['next'] = getpage_makeUrl($modx, $properties, $page + 1, $pageNextTpl);
}
Это имеет смысл, но не позволяет мне отображать заполнители так, как я хочу. Итак, я пытаюсь достичь чего-то вроде этого:
// example for lines 16 - 18
if (!empty($pagePrevTpl)) {
if (($page - 1) >= 1) {
$nav['prev'] = getpage_makeUrl($modx, $properties, $page - 1, $pagePrevTpl);
} else {
$nav['prev'] = x // where x = default value for prev (set with :default)
}
}
Простое else или elseif, подобное приведенному выше, сработает, но этого не будет после обновления. У кого-нибудь есть идеи, как лучше всего подойти к этому? Есть ли способ достичь того, чего я хочу, без перезаписи изменений при обновлении? С набором свойств или что-то в этом роде? Я надеюсь, что кто-нибудь знает, как это сделать.