Pdomenu як заміна wayfinder

pdoMenu як заміна Wayfinder

Ці два сниппета використовуються для побудови меню на основі дерева ресурсів Modx Revo. pdoMenu в порівнянні з Wayfinder працює значно спритніше, та й по функціоналу і гнучкості безсумнівно у останнього виграє. Тому на всіх розроблюваних мною сайтах, я поступово став відмовлятися від Wayfinder на користь pdoMenu. Але оскільки їх параметри рідко і відрізняються, щоб такий перехід був безболісним, в цій статті я вирішив пройтися по всіх параметрах двох фрагментів, об'єднавши схожі за призначенням параметри в один рядок. Таким чином, якщо ви вирішите перейти з Wayfinder на pdoMenu, вам просто потрібно буде замінити значення з першого стовпчика на друге. Втім справедливо і зворотне твердження, однак я поки що не зустрічав таких випадків, щоб в цьому була необхідність.

Основні параметри

Wayfinder (значення за замовчуванням)

pdoMenu (значення за замовчуванням)

Wayfinder. Як параметр вказується ресурс, від початку якого буде побудовано меню. 0 - означає що від самого кореня, жоден ресурс не буде пропущений.

pdoMenu. У parents через кому можна вказувати кілька батьків. Якщо ім'я ресурсу починається з "дефіса", то він виключається з вибірки.

Чи включати самого батька, від якого будується меню, до вибірки. 0 - не включати.

Максимальний рівень вкладеності. 0 - показувати всі рівні.

Ігніровать чи настройку ресурсу - "Більше не показувати в меню". 0 - не ігнорувати.

Якщо значення не порожньо, то всі дані будуть збережені в плейсхолдер, замість їх виведення на екран.

Ховати неактивні гілки меню. 0 - не ховати.

Якщо значення не порожньо, то буде використовуватися заданий префікс, який буде зазначений перед id документа.

Генерувати посилання на ресурс чи ні. Чи стане доступна в плейсхолдере [[+ link]].

pdoMenu. Якщо значення не порожньо, то в меню будуть виведені тільки зазначені ID ресурсів. Вказуються через кому. Якщо ID ресурсу починається з дефіса, то він виключається з вибірки.

Wayfinder. За вибірку певних ресурсів відповідає параметр includeDocs, за виключення - excludeDocs.

приклади роботи

Для того щоб побудувати найпростіше меню, яке виведе пункти меню тільки першого рівня від кореня, досить викликати сніпет так:

А ось і приклад того, наскільки сниппет взагалі може бути гнучким:

Фактично тут ми кастомизировать обгортку як для першого, так і другого рівня вкладеності.

Однак, це лише мала частина того, як можна використовувати сниппет - завдяки його гнучкості, варіантів може бути нескінченно багато.

Пошук на сайті

Схожі статті