MODX відрізняється від інших систем абсолютної гнучкістю. З одного боку це плюс, з іншого боку це призводить до відсутності в MODX такого поняття як «віджет», наприклад, як в вордпресс:
Сьогодні я навчу вас як за допомогою MIGX зробити панель управління віджетами.
Припустимо, у нас є такий блок на сайті:
Давайте зробимо панель управління цим блоком, щоб адміністратор сайту міг змінювати частини віджету місцями, редагувати текст, замінити картинку.
підготовка
Для початку створимо ТВ-параметри для кожного редагованого поля: adv.img. adv.title. adv.description. ТВ-шкамі задаємо потрібний нам тип (зображення, текст, текстова область.). Ці ТБ не повинні бути доступні ні для якого шаблону. Вони потрібні тільки для того, щоб створити вікно редагування віджету.
Тепер встановлюємо MIGX і приступаємо до створення інтерфейсу. Створюємо ще один ТВ-параметр (adv) з типом migx:
активуємо інтерфейс
Тепер створюємо новий технічний шаблон і технічну сторінку в дереві - Віджети (якої присвоюємо цей шаблон). Наш MIGX-ТВ робимо доступним для цього шаблону.
Тепер приберемо для цього ресурсу все вкладки окрім «Додаткових полів» через настройку форм
А сам ресурс приховуємо з дерева через базу даних (в таблиці modx_site_content ставимо нулик в поле show_in_tree). Тільки запам'ятайте id цього ресурсу. Він нам знадобиться, щоб вивести посилання на нього в верхньому меню.
Виводимо посилання на ресурс в верхньому меню
Відкриваємо → Дії. розкриваємо пункт Top nav і натискаємо на «Додатки». Після цього натискаємо кнопку «Додати пункт»:- Батько - components
- Ключ словника - Віджети
- Дія - resource / update
- параметри - id =
У підсумку в верхньому меню (в «Додатках») з'явиться пункт «Віджети», який буде відкривати наш ресурс.
А виводити віджети на сторінку допоможе сниппет getImageList. який йде в комплекті з MIGX:
← Підраховуємо кількість натискань на кнопку
Розбір коду початківця програміста сніпетів MODX →