Головне завдання Wayfinder - це створення меню навігації, яке буде автоматично оновлюватися при зміні дерева документів, але він також з успіхом може використовуватися для інших цілей.
Оскільки ви можете викликати Wayfinder на одній сторінці кілька разів, і кожен виклик може вказувати на різні рівні дерева документів, ви можете створити безліч меню навігації або списків документів на одній сторінці. Як приклад ви можете зробити меню навігації у верхній частині сторінки, потім збоку зробити дополітельние меню для продуктів, сервісів, команд, і т.д. що відносяться до різних розділів дерева докуметов.
Будь ласка, зверніть увагу, що з моменту виходу Revolution є два типи сніпетів Wayfinder, - для Evolution і Revolution. Взагалі кажучи, функціонально обидві версії ідентичні, як і їх параметри. У Revolution сниппет викликається як. [[! Wayfinder? . ]]. а в Evolution як [! Wayfinder? . ].
Ви можете обговорити Wayfinder на форумах MODx. Додаткову документацію Wayfinder 2.0 можна знайти тут.
Wayfinder був повністю перероблений з початкового варіанта DropMenu, щоб зробити простішим створення будь-якого необхідного меню з використанням чанкі і шаблонів виводу. При використанні шаблонів для гнучкого виведення меню, багато параметрів, такі як таблиці, маркований і не маркований списки, більше не потрібні.
Установка для Revolution
У MODx Revolution, Wayfinder може бути завантажений з меню управління пакетами в панелі управління. Перейдіть в меню "Система -> управління пакетами", натисніть "Завантажити додаток" і завантажте Wayfinder. Після цього потрібно його встановити, використовуючи стандартну процедуру.
[[! Wayfinder? startId = `0` level = `1`]]
В результаті буде виведений багаторівневий ненумерований список, який представляє все дерево документів сайту MODX, при цьому кожен елемент буде посиланням на відповідний документ.
Параметри загального призначення
Значення за замовчуванням
Початкова точка (ID документа) для меню, звідки будуть братися виводяться документи. Вказуйте 0 для початку меню з кореня сайту.
id поточного документа
0 | id документа | [[* Parent *]] | [[* Id *]]
якщо displayStart = 1, це змусить Wayfinder вивести посилання на документ, який використовується в якості startId, згідно шаблону startItemTpl. Параметр працює, якщо startId не дорівнює 0.
параметри шаблону
Ці параметри вказують на чанкі, що містять шаблони для управління виводу Wayfinder.
В існуючій версії WayFinder для Revolution ви можете здійснювати доступ до своїх tv-параметрам без префікса wf. наприклад, [[+ my_TV]].
На даний момент повертається необроблене значення tv-параметра, воно не буде форматувати. Наприклад, якщо вашим tv-параметром є зображення, при звичайному використанні tv-параметра всередині вашого шаблону ви отримаєте тег з цілим образом а при використанні усередині шаблону WayFinder ви отримаєте тільки шлях до зображення.
outerTpl - ім'я чанка, що містить зовнішній контейнер для генеруються WayFinder даних. Всі документи і папки будуть оброблятися і вставлятися в плейсхолдер [[+ wf.wrapper]]. якщо outerTpl не вказано, він вважається рівним "
- [[+ Wf.wrapper]]
- [[+ Wf.classes]] - тут вставляється зазначений клас (включаючи class = "")
- [[+ Wf.classnames]] - сюди вставляється тільки ім'я зазначеного класу (без class = "")
- [[+ Wf.wrapper]] - місце, де виводиться весь вміст меню. Цей плейсхолдер є обов'язковим.
rowTpl - ім'я чанка для шаблону пункту меню
- [[+ Wf.classes]] - тут вставляється зазначений клас (включаючи class = "")
- [[+ Wf.classnames]] - сюди вставляється тільки ім'я зазначеного класу (без class = "")
- [[+ Wf.link]] - значення href для вашого посилання
- [[+ Wf.title]] - текст атрибута title для посилання з поля, наданого в секції titleOfLinks
- [[+ Wf.linktext]] - текст для фактичної посилання з поля, наданого в секції titleOfLinks
- [[+ Wf.wrapper]] - місце вставки підміню
- [[+ Wf.id]] - місце вставки унікального id. Вам потрібно буде вказати параметр rowIdPrefix, щоб цей плейсхолдер отримав значення, яке буде. ваш префікс + id документа
- [[+ Wf.attributes]] - місце вставляти такі атрибути посилання
- [[+ Wf.docid]] - місце вставки ідентифікатора поточного документа
- [[Wf.description]] - висновок поля опису поточного документа
- [[Wf.level]] - глибина поточного елемента
приклади rowTpl або пов'язаного з ним чанка:
Далі, в таблиці нижче показані параметри, які використовують ті ж плейсхолдери, що і rowTpl.
Ім'я чанка, що містить шаблон для поточного документа, якщо він контейнер і має дочірні ресурси. Використовуйте плейсхолдер для видачі дочірніх документів.
Ім'я чанка, що містить шаблон для будь-якого документа, якщо він контейнер і має дочірні ресурси. Використовуйте плейсхолдер для видачі дочірніх документів.
Ім'я чанка, що містить шаблон для поточного документа.
Ім'я чанка, що містить шаблон для кожного підміню. якщо параметр innerTpl не вказано, замість нього використовується outerTpl.
Ім'я чанка, що містить шаблон для пунктів підміню.
Ім'я чанка, що містить шаблон для поточного документа, якщо він знаходиться в підміню.
Ім'я чанка, що містить шаблон для документів, які є контейнерами, мають дочірні ресурси і в даний час активні.
Параметри імені класу CSS
CSS можна використовувати для управління видом (а в деяких випадках - дією) різних частин даних, що виводяться. Однак, необхідно вказати Wayfinder, які імена класів CSS використовуються, і з якими частинами виведених даних вони повинні бути пов'язані.