Modx Evo Як створити ланцюжок меню для Modx (Хлібні крихти) від Василиси Білозерової
Часто потрібно створити ланцюжок елементів меню. Зазвичай вона має такий вигляд:
І відображається вгорі сторінки. Ця функція потрібна для зручності користувачів.
Отже, почнемо. У modx є вбудований сніпет - [[Breadcrumbs]]
Для того, щоб ним скористатися, необхідно в шаблоні сайту прописати:
[ [Breadcrumbs]] або [ !Breadcrumbs]]
В даному випадку використовуємо саме 1 варіант, так як нам не потрібно оновлення даних щоразу при оновленні однієї сторінки.
Хлібні крихти зі стилями
Відображається на всіх сторінках, крім першої.
Налаштуємо стилі для нашого ланцюжка:
#bread top: 20px; text-align:left;
#bread afont-size : 14px; color:#333; >
Можна використовувати додаткові параметри:
[[Breadcrumbs? &ім'я_параметра1=`значення` &ім'я_параметра2=`значення`]]
Параметри Breadcrumbs
-
&maxCrumbs — максимальна кількість пунктів у ланцюжку. Можливі значення: ціле число. За замовчуванням: 100.
Примітка: якщо встановлено число менше можливої кількості пунктів, то посередині ланцюжка з'явиться крапка «. замість зайвих пунктів.
&respectHidemenu — приховувати пункти, які не позначені для показу в меню. Можливі значення: 0 - відображати 1 - приховувати. За замовчуванням: 1.
Примітка: увімкнути та вимкнути пункти для показу в меню можна на сторінці редагування ресурсу на вкладці «Загальні». галочка "Показувати в меню".
&showCurrentCrumb — показувати в ланцюжку пункт з назвою поточної сторінки. Можливі значення 0 - не показувати 1 - показувати. За замовчуванням: 1.
Примітка: за допомогою цьогопараметра можна вимкнути відображення останнього пункту в ланцюжку.
Примітка: за промовчанням цей параметр відображає пункт поточної сторінки у вигляді простого тексту, якщо ви захочете відобразити пункт у вигляді посилання на поточну сторінку, виставте значення 1.
&linkTextField — назва пунктів у ланцюжку навігації. За замовчуванням: menutitle або pagetitle. Можливі значення: description longtitle pagetitle menutitle.
Примітка: від цього параметра залежить, яке поле буде братися для формування назви пунктів навігаційного ланцюжка. За промовчанням назва пункту ланцюжка співпадатиме з назвою пункту меню, яку можна змінити на сторінці редагування ресурсу в полі «Пункт меню».
&linkDescField — атрибут title для посилань у ланцюжку навігації. За замовчуванням: description. Можливі значення: pagetitle, longtitle, description, menutitle. Примітка: значення атрибута title спливає при наведенні мишки посилання у ланцюжку навігації. За промовчанням береться значення поля "Опис", яке можна змінити на сторінці редагування ресурсу.
Примітка: можете встановити значення 0, якщо з якоїсь причини хочете, щоб ланцюжок навігації був неклікабельним і відображався у вигляді тексту.
&crumbGap — рядок, який буде розрив ланцюжка навігації. Можливі значення: рядок. За замовчуванням: багатокрапка «. ».
Примітка: ви можете вказати які символи будуть розривати навігаційний ланцюжок, якщо кількість пунктів у ланцюжку більше вказаного в &maxCrumbs значення.
&stylePrefix — приставка в назвах CSS класів. Можливі значення: рядок. За замовчуванням: B_.
Примітка: значення цього параметра визначає префікс у назві CSSкласів. Трохи вище ми вже відзначили, які класи використовуються під час виведення HTML розмітки та за що вони відповідають.
Налаштування для посилання на головну сторінку:
- &showHomeCrumb — відображати посилання на головну сторінку. Можливі значення: 0 - не відображати 1 - відображати. За замовчуванням: 1.
&homeId — ідентифікатор сторінки, яка буде вважатися головною. Можливі значення: ціле число. За умовчанням: $modx->config['site_start'].
Примітка: за промовчанням головною сторінкою буде вважатися та, ідентифікатор якої вказаний на сторінці системної конфігурації в полі "Перша сторінка".
&homeCrumbTitle — текст пункту головної сторінки в ланцюжку навігації. Можливі значення: рядок. За замовчуванням: menutitle або pagetitle.
Примітка: Використовувати цей параметр можна, якщо ви бажаєте, щоб текст пункту головної сторінки відрізнявся від назви пункту меню головної сторінки або заголовка сторінки, які можна змінити під час редагування ресурсів. Наприклад, деякі розробники замість назва «Головна сторінка» вписують назву домену в ланцюжку навігації.
&homeCrumbDescription — текст користувача, який може бути використаний як атрибут title для посилання на головну сторінку.
Примітка: якщо поле залишити порожнім, текст для атрибуту title буде визначатися параметром &linkDescField. За бажанням можете вписати текст, який випливе при наведенні курсору на посилання. Наприклад, «Перейти на головну сторінку»
Налаштування для відображення навігаційного ланцюжка на різних сторінках:
- &showCrumbsAtHome — відображати ланцюжок навігації на головній сторінці. Можливі значення: 0 - не відображати 1 - відображати. За замовчуванням: 1.
Примітка: за допомогою цього параметра можна вимкнути показ навігаційного ланцюжка на головній сторінці.
&hideOn — не відображати ланцюжок навігації на сторінках Можливі значення: розділені комами ідентифікатори сторінок, на яких не повинен відображатися ланцюжок навігації.
Примітка: цей параметр зручно використовувати для невеликої кількості сторінок, на яких як виняток не потрібно виводити рядок навігації. Якщо таких сторінок багато, то краще скористатися параметром &hideUnder або подумати над створенням ще одного шаблону.
&hideUnder — не відображати ланцюжок навігації на дочірніх сторінках Можливі значення: розділені комами ідентифікатори папок, на дочірніх документах яких не має відображатися стоку навігації.
Примітка: ID папок приховує рядок навігації лише на дочірніх сторінках. Якщо ви бажаєте, щоб рядок не відображався як на дочірніх, так і на батьківських сторінках, додайте ID батьківських ресурсів як у &hideUnder так і &hideOn.