Налаштування MIGX для керування складним контентом у MODX
Уявіть: клієнт просить додати на лендінг блок «Наші кейси», де кожен кейс містить логотип, назву, опис, список технологій та посилання. Без MIGX доводиться створювати 5–6 окремих TV-параметрів або зберігати все в одному JSON-полі, а потім писати складний парсер. Стандартні TV-параметри MODX не дозволяють створювати повторювані групи полів — доводиться дублювати TV або використовувати костилі. Редактору незручно, розробнику — боляче. MIGX вирішує це за 15 хвилин.
MIGX (Multi-Items Grid for MODX) — Extra для створення повторюваних груп полів всередині одного TV-параметра. Аналог Paragraphs у Drupal або повторювачів у ACF/WordPress. Редактор може додавати скільки завгодно блоків довільної структури: слайди, переваги, кроки, галереї, прайс-листи. Ми налаштовуємо MIGX під ключ — ви отримуєте готові конфігурації та шаблони виведення. За 5 років роботи ми налаштували MIGX більш ніж на 50 проєктах — від лендінгів до каталогів. Зв'яжіться для консультації.
Встановлення MIGX
Встановлення просте: Package Manager → знайти migx → встановити. Додатково: MIGX встановлює компонент у менеджері та додає тип поля для TV. Після встановлення в меню з'являється розділ «MIGX» для керування конфігураціями.
Створення конфігурації MIGX для слайдера
Компоненти → MIGX → Конфігурації → Створити. Приклад конфігурації «Слайдер» (slider):
{ "formtabs": [ { "caption": "Слайд", "fields": [ { "field": "image", "caption": "Зображення", "inputTV": "migx_image", "inputTVtype": "image" }, { "field": "title", "caption": "Заголовок", "inputTVtype": "text" }, { "field": "subtitle", "caption": "Підзаголовок", "inputTVtype": "textarea" }, { "field": "link", "caption": "Посилання кнопки", "inputTVtype": "url" }, { "field": "btn_text", "caption": "Текст кнопки", "inputTVtype": "text", "default": "Детальніше" } ] } ], "columns": [ { "header": "Зображення", "dataIndex": "image", "renderer": "this.renderImage", "width": 80 }, { "header": "Заголовок", "dataIndex": "title" } ], "actionbuttons": "add,edit,remove,moveup,movedown", "window_title": "Слайд" } Прив'язка MIGX до TV-параметра
Елементи → Змінні шаблонів → Створити: тип введення — migxdb або migx, конфігурація MIGX — slider, ім'я — hero_slider. Готово.
Як вивести MIGX на сайті?
Найпоширеніший спосіб — сніпет getImageList. Ми використовуємо його в 90% проєктів. Приклад виведення слайдера:
[[!getImageList? &tvname=`hero_slider` &docid=`[[*id]]` &tpl=`@INLINE <div class="slide" style="background-image:url([[+image]])"> <h2>[[+title]]</h2> <p>[[+subtitle]]</p> <a href="[[+link]]" class="btn">[[+btn_text]]</a> </div> ` ]] Альтернативний метод — через pdoTools та pdoField, але getImageList простіший і швидший. Порівняння методів виведення MIGX:
| Метод | Швидкість | Гнучкість | Складність |
|---|---|---|---|
| getImageList | Висока | Середня | Низька |
| migxLoopCollection | Середня | Висока | Середня |
| pdoTools + pdoField | Середня | Висока | Середня |
getImageList оптимальний для більшості завдань. migxLoopCollection дає більше контролю, але вимагає додаткового налаштування.
Порівняння MIGX і стандартних TV-списків
Стандартні TV-списки вимагають окремої змінної для кожного поля. Якщо потрібно 10 слайдів по 5 полів — це 50 TV. MIGX зберігає все в одному TV як JSON, скорочуючи кількість змінних у 10 разів. Крім того, MIGX включає вбудовану валідацію, drag-and-drop сортування та підтримку вкладених структур. Це скорочує час розробки на 30–40%.
| Параметр | Стандартні TV списки | MIGX |
|---|---|---|
| Кількість TV | Багато (N*полів) | 1 TV |
| Підтримка повторень | Ні | Так, необмежено |
| Вкладені структури | Ні (тільки рядки) | Так (JSON) |
| Сортування елементів | Вимагає доопрацювання | Вбудована drag-drop |
| Валідація полів | Тільки тип даних | Налаштовувана |
Можливості MIGX для складного контенту
MIGX підтримує вкладені JSON — всередині одного поля можна зберігати масиви даних. Наприклад, блок «Послуги з іконками»:
{ "formtabs": [{ "fields": [ { "field": "icon", "caption": "Іконка SVG", "inputTVtype": "textarea" }, { "field": "title", "caption": "Назва", "inputTVtype": "text" }, { "field": "description", "caption": "Опис", "inputTVtype": "textarea" }, { "field": "features", "caption": "Особливості (через ;;)", "inputTVtype": "textarea" } ] }] } Виведення через getImageList:
[[!getImageList? &tvname=`services_list` &docid=`[[*id]]` &tpl=`@INLINE <div class="service-card"> <div class="icon">[[+icon]]</div> <h3>[[+title]]</h3> <p>[[+description]]</p> [[+features:notempty=` <ul> [[+features:explode=`;;`:each=`<li>[[+v]]</li>`]] </ul> `]] </div> ` ]] MIGX дозволяє реалізувати практично будь-яку структуру: галереї, таби, акордеони, прайс-листи. Гнучкість MIGX у 3–4 рази вища, ніж у стандартних TV-списків. За даними офіційної документації MODX, MIGX — це стандарт для повторюваних блоків.
Чому MIGX зручніший за стандартні TV?
Стандартні TV-списки вимагають окремої змінної для кожного поля. Якщо потрібно 10 слайдів по 5 полів — це 50 TV. MIGX зберігає все в одному TV як JSON, скорочуючи кількість змінних у 10 разів. Крім того, MIGX включає вбудовану валідацію, drag-and-drop сортування та підтримку вкладених структур. Це скорочує час розробки на 30–40%.
Типова помилка: забути вказати docid
Якщо не вказати &docid або вказати невірний ID, getImageList поверне порожній результат. Завжди перевіряйте ID документа, особливо при виклику на сторінці іншого ресурсу.Що входить у налаштування MIGX під ключ
Ми не просто встановлюємо розширення — ми проєктуємо структуру даних, створюємо конфігурації, прив'язуємо TV, пишемо шаблони виведення та оптимізуємо продуктивність. У результаті ви отримуєте:
- до 5 типів повторюваних блоків (слайдер, переваги, команда, прайс, відгуки);
- шаблони виведення з адаптивною версткою;
- документацію для редакторів;
- консультацію щодо наповнення.
Терміни та вартість
Налаштування MIGX-конфігурації для 3–5 типів блоків — 1–2 дні. Вартість розраховується індивідуально залежно від складності структур та кількості блоків. Ми гарантуємо працездатність та оптимізацію запитів.
Щоб отримати готове рішення, зв'яжіться з нами — оцінимо проєкт і запропонуємо налаштування MIGX під ключ. Замовте налаштування MIGX прямо зараз і пришвидшіть розробку на 30%.







