MODx Украина » Встроенные сниппеты » Wayfinder

Все о Wayfinder

 

WayFinder

WayFinder(с англ. - искатель пути) — это сниппет для MODx который предназначен для генерации меню(списков ссылок) и т.п. Функционально он очень обширен. Что можно сделать с его помощью:

  1. Одно и многоуровневые меню, статичные меню, всплывающие под-меню.
  2. Динамическое добавление классов в каждый пункт меню.
  3. Добавить шаблоны для разных видов ссылки (текущая, родительская и т.д.)
     

Примеры использования Wayfinder:

Простое меню:

 

[!Wayfinder? &startID=`10` !]

 

Здесь 10 - это папка из которой нужно вывести документы в меню. Результатом будет неупорядоченный список.

Карта сайта:

 

[[Wayfinder? &startId=`0` ]]

Здесь 0 - это корень сайта. Результатом будет многоуровневый неупорядоченный список. Пример такой карты

Дочерные документы: Если нужно вывести дочерние документы от текущего конструкция должна выглядеть так:

[[Wayfinder? &startId=`[*id*]`]]

Результатом будет неупорядоченный список.

Параметры:

  • startId — папка контейнер откуда будут браться ссылки (возможные значения: ID папки)
  • sortBy — параметр по которому будет идти сортировка (возможные значения: id | menutitle | pagetitle | introtext | menuindex | pub_date | published | hidemenu | parent | isfolder | description | alias | longtitle | type | template)
  • sortOrder — порядок сортировки, т.е. в каком напрявлении будет происходить сортировка (возможные значения: ASC | DESC)
  • hereClass — css-класс для активного пункта меню
  • firstClass — css-класс для первого пункта меню
  • lastClass — css-класс для последнего пункта меню
  • rowClass — css-класс для всех пунктов меню
  • outerClass — css-класс для контейнера меню
  • innerClass — css-класс для под-пунктов меню
  • hideSubMenus — Скрывать подменю и выводить для активного пункта(возможные значения: true | false )
  • includeDocs — включить в меню произвольные документы(возможные значения: ID документа)
  • excludeDocs — исключить из меню произвольные документы(возможные значения: ID документа)

Шаблоны:

Бывают разные шаблоны для WayFinder. Шаблон - это чанк с определенным Html-кодом который разбавлен динамическими постановщиками(плейсхолдерами - placeholder). Плейсхолдер это специальный тег под который после подставляется динамическое содержимое. Выглядит конструкция постановщика так: [+placeholder+]. Название шаблона это его параметр при вызове Wayfinder (например если нужно задать шаблон outerTpl, то вызвать надо так [!Wayfinder? &outerTpl=`чанк`!])

1) outerTpl — шаблон всего контейнера меню. Классически выглядит так:

<ul id="myajaxmenu"> [+wf.wrapper+] </ul>

2) rowTpl — шаблон пункта меню. По умолчанию такой:

<li[+wf.classes+]><a href="[+wf.link+]" title="[+wf.title+]">[+wf.linktext+]»</a>[+wf.wrapper+]</li[+wf.classes+]>

3) innerTpl — шаблон контейнера под-меню. Вот так выглядит без изменений:

<ul[+wf.classes+]>[+wf.wrapper+]</ul>

4) innerRowTpl — шаблон под-пунктов. Пример:

<li[+wf.classes+]><a href="[+wf.link+]" title="[+wf.title+]">[+wf.linktext+]</a>[+wf.wrapper+]</li>

5) hereTpl — шаблон активного пункта меню. Пример:

<li[+wf.classes+]><span>[+wf.linktext+]</span>[+wf.wrapper+]</li>

Плейсхолдеры для шаблонов:

  • [+wf.classes+] — будет заменен классом (включая class=" ")
  • [+wf.classnames+] — будет заменен именем класса (без class=" ")
  • [+wf.link+] — место для гиперссылки (значения href)
  • [+wf.title+] — место для текста атрибута title для ссылки
  • [+wf.linktext+] — место вставки текста гиперссылки
  • [+wf.wrapper+] — место вставки подменю
  • [+wf.id+] — место вставки уникального id
  • [+wf.attributes+] — место вставки атрибутов ссылки
  • [+wf.docid+] — место вставки идентификатора текущего документа
  • [+wf.description+] — описание документа
   

Понравилась статья?

Тогда подпишитесь на:

  1. RSS-ленту
  2. Email рассылку
  3. Twitter ленту
  4. Facebook ленту или нашу Facebook страницу!

Также вас могут заинтересовать:


Комментариев
Комментарии работают на Disqus