понедельник, 26 октября 2015 г.

pdoCrumbs - быстрая замена BreadCrumb

Спонсор блога Магазин детской одежды Dress


Сниппет для построения навигации в стиле хлебных крошек.
Хорошо заменяет BreadCrumb, работает с документами из любых контекстов и позволяет указывать различные условия для выборки ресурсов.
Сниппет обладает очень высокой скоростью работы, за счет выборки всех нужных элементов из БД за один запрос.

Параметры

Принимает все параметры pdoTools и некоторые свои:
ПараметрПо умолчаниюОписание
&showLog0Показывать дополнительную информацию о работе сниппета. Только для авторизованных в контекте «mgr».
&from0Id ресурса, от которого строить хлебные крошки. Обычно это корень сайта, то есть «0».
&toId ресурса для которого строятся хлебные крошки. По умолчанию это id текущей страницы.
&excludeСписок id ресурсов, которые нужно исключить из выборки.
&toPlaceholderЕсли не пусто, сниппет сохранит все данные в плейсхолдер с этим именем, вместо вывода не экран.
&outputSeparator → Разделитель между крошками
&tplИмя чанка для оформления ресурса. Если не указан, то содержимое полей ресурса будет распечатано на экран.
&tplCurrentЧанк оформления текущего документа в навигации.
&tplMaxЧанк, который добавляется в начало результатов, если их больше чем &limit.
&tplHomeЧанк оформления ссылки на главную страницу.
&tplWrapperЧанк-обёртка, для заворачивания всех результатов. Понимает один плейсхолдер: [[+output]]. Не работает вместе с параметром &toSeparatePlaceholders.
&wrapIfEmptyВключает вывод чанка-обертки &tplWrapper даже если результатов нет.
&showCurrent1Выводить текущий документ в навигации.
&showHome0Выводить ссылку на главную в начале навигации.
&showAtHome1Показывать хлебные крошки на главной странице сайта.
&hideSingle0Не выводить результат, если он один единственный.
&directionltrНаправление навигации: слева направо «ltr» или справа налево «rtl», например для Арабского языка.

Шаблоны

ШаблонПо умолчанию
&tpl@INLINE <a href="[[+link]]">[[+menutitle]]</a>
&tplCurrent@INLINE <span>[[+menutitle]]</span>
&tplMax@INLINE <span>&nbsp;...&nbsp;</span>
&tplHome
&tplWrapper@INLINE <div class="breadcrumbs">[[+output]]</div>

Примеры

Генерация хлебных крошек для текущей страницы:
[[pdoCrumbs]]
Генерация в ограничением по количеству пунктов:
[[pdoCrumbs?
    &limit=`2`
]]
Сниппет хорошо работает при вызове из pdoResources. Например, вот такой чанк:
<h3>[[+pagetitle]]</h3>
<p>[[+introtext]]</p>
[[pdoCrumbs?
    &to=`[[+id]]`
    &showCurrent=`0`
]]

Комментариев нет:

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