Розробка сайту на CMS MODX Revolution
MODX Revolution — гнучка CMS без жорстких шаблонних паттернів. Немає передустановлених тем, немає обов'язкової структури. Розробник контролює все: HTML, CSS, структуру URL, логіку обробки контенту. Популярна в Рунеті — особливо серед веб-студій, які розробляють корпоративні сайти.
Архітектура MODX
Ресурс (Resource) — будь-яка сторінка: стаття, товар, новина, розділ.
Шаблон (Template) — HTML-обгортка з плейсхолдерами [[*поле]].
TV-параметри — додаткові поля ресурсу.
Чанки (Chunks) — переиспользуемі HTML-блоки.
Сніпети (Snippets) — PHP-код, що повертає контент.
Плагіни (Plugins) — обробники системних подій.
Типовий стек проекту
MODX Revolution 3.x
├── PHP 8.1–8.3
├── MySQL 8.0+
├── Extras:
│ ├── pdoTools (продуктивні сніпети)
│ ├── migx (складні TV-поля)
│ ├── Gallery / phpThumbOf (зображення)
│ ├── msearch2 / SimpleSearch (пошук)
│ ├── FormIt (форми)
│ └── FastTab (організація TV у панелі)
└── Frontend: Vite + Tailwind CSS
Шаблон сторінки
<!DOCTYPE html>
<html lang="[[++locale:default=`uk`]]">
<head>
<meta charset="utf-8">
<title>[[*pagetitle]] — [[++site_name]]</title>
<meta name="description" content="[[*description:default=`[[++site_tagline]]`]]">
[[- SEO теги через pdoPage/Seosuite ]]
[[++seosuite_meta_output]]
<link rel="stylesheet" href="[[++assets_url]]css/app.css?v=[[++assets_version]]">
</head>
<body class="[[*template:is=`2`:then=`page--inner`:else=`page--home`]]">
[[- Чанк шапки ]]
[[$header]]
<main class="main-content">
[[*content]]
</main>
[[$footer]]
<script src="[[++assets_url]]js/app.js?v=[[++assets_version]]" defer></script>
</body>
</html>
Структура сайту
Дерево ресурсів:
├── Головна (шаблон: home)
├── Про компанію (шаблон: page-inner)
│ ├── Команда
│ └── Історія
├── Послуги (шаблон: services-list) [Container=1]
│ ├── Розробка сайтів (шаблон: service-detail)
│ └── SEO-просування (шаблон: service-detail)
├── Блог (шаблон: blog-list) [Container=1]
│ └── ... (статті)
└── Контакти (шаблон: contacts)
Вивід дочірніх ресурсів через pdoMenu/pdoResources
[[pdoResources?
&parents=`[[*id]]`
&tpl=`@INLINE <div class="service-card"><h3><a href="[[+uri]]">[[+pagetitle]]</a></h3><p>[[+introtext]]</p></div>`
&limit=`0`
&showHidden=`0`
&sortby=`menuindex`
]]
Форми через FormIt
[[!FormIt?
&hooks=`email,redirect`
&emailTo=`[email protected]`
&emailSubject=`Заявка від [[+name]]`
&emailTpl=`emailTpl`
&redirectTo=`42`
&validate=`name:required:minLength=^2^,email:required:email,message:required`
]]
<form action="[[~[[*id]]]]" method="post">
[[!+fi.validation_error_message:notempty=`<p class="error">[[!+fi.validation_error_message]]</p>`]]
<input type="text" name="name" value="[[!+fi.name]]" placeholder="Ім'я" required>
[[!+fi.error.name:notempty=`<span class="field-error">[[!+fi.error.name]]</span>`]]
<input type="email" name="email" value="[[!+fi.email]]" placeholder="Email" required>
<textarea name="message" rows="5">[[!+fi.message]]</textarea>
[[!+fi.recaptcha_html]]
<button type="submit">Відправити</button>
</form>
Переваги MODX для розробника
- Повний контроль над HTML (немає навязаної розмітки)
- Гнучка структура URL без обмежень CMS
- Немає overhead від невикористовуваних функцій
- Простий дебаггінг через
[[+output:dump]]
Терміни
Корпоративний сайт на MODX із користувацькими шаблонами, 8–15 сторінок, формами та фільтрами — 3–5 тижнів.







