ВК
версия для слабовидящих

Modx

MODX (читается «мо́дэкс») — система управления содержимым с открытым исходным кодом и открытой лицензией. Написана на языке программирования PHP, использует для хранения данных СУБД MySQL или MS SQL. Она является относительно новой по сравнению с другими cms, но ее функции и возможности сделали ее популярной среди разработчиков.

Проект MODx был начат весной 2005 года Раймондом Ирвингом и Раяном Трашем (Raymond Irving и Ryan Thrash) после того, как разработчики Etomite отказались от развития своей CMS как открытого продукта. Был предпринят форк системы, и пошло самостоятельное развитие системы.

Существует 2 варианта: Evolution и Revolution. Первая появилась как "лёгкая" версия, а в дальнейшем стала отдельной CMS под названием Evolution. Вторая же появилась в 2010 г и развивается до сих пор. На момент актуализация статьи последней версией считается 3.0.3.

Сфера применения

Modx revolution можно использовать для создания веб-сайтов любой сложности, от небольших одностраничных сайтов (лендингов) до крупных магазинов электронной коммерции. Его также можно использовать для разработки многоязычных веб-сайтов и блогов. Более того, он удобен для переноса сайта в свою инфоструктуру и дает много дополнительных возможностей по настройке сайтов.

Получилось это благодаря шаблонизаторам, которые можно использовать в движке: мы можем работать как на простой связке html/css/js, так и использовать различные шаблонизаторы (например smarty). Есть также свой под названием fenome.

Преимущества

Одним из главных преимуществ modx revolution является его гибкость: он позволяет разработчикам быстро и легко создавать пользовательские шаблоны и модули. Кроме того, он обладает интуитивно понятным пользовательским интерфейсом, который делает создание сайтов проще, чем когда-либо прежде. Кроме того, modx revolution предоставляет обширную библиотеку плагинов, которые можно использовать для добавления дополнительных возможностей и функциональности сайта в кратчайшие сроки.

Недостатки

Хотя modx revolution имеет много преимуществ перед другими cms, есть и некоторые недостатки.

Во-первых, от новичка в разработке сайтов он требует большего знания кода, чем wordpress или joomla, поэтому людям с ограниченным опытом может быть сложно использовать его на начальном этапе.

Во-вторых, ограниченное количество готовых шаблонов, которые можно скачать из репозитория. Да, можно использовать любой шаблон HTML, но для работавших с тем же вордпрессом это недостаток.

В-третьих, своя терминология. Хотя сомневаюсь, что это серьезный недостаток. 

Кроме того, поскольку modx revolution является относительно новой системой по сравнению с другими системами на рынке, существует меньше ресурсов о том, как эффективно использовать эту систему по сравнению с более известными системами, такими как wordpress или drupal. Но также можно сказать, что русскоязычных пользователей этой системы управления сайтом довольно много.

Совместимость с git

Modx revolution полностью совместима с системой контроля версий git, которая позволяет разработчикам получить доступ к таким функциям, как слияние ветвей и разрешение конфликтов при одновременной работе над разными версиями одного и того же проекта. Это гарантирует, что изменения, внесенные несколькими пользователями, не перезапишут работу друг друга при слиянии проектов, что значительно упрощает разработку для команд, работающих над несколькими ветками одновременно. Возможность для разных членов команды в рамках проектной группы делиться изменениями в нескольких ветках значительно упрощает разработку, особенно когда речь идет о больших проектах, требующих совместной работы разных сторон в течение длительного времени.

Терминология

Для того чтобы понять, как работает modx, необходимо ознакомиться с некоторыми основными терминами, такими как переменные шаблона (TV), чанки, сниппеты, элементы, группы ресурсов и т. д.

Шаблонные переменные содержат информацию о конкретных элементах на страницах, а чанки — это куски html-кода, которые многократно отображаются на сайте. Сниппеты — это небольшие исполняемые фрагменты кода, предназначенные для выполнения определенных задач, таких как отображение форм или динамическое отображение данных, а элементы — это объекты, такие как плагины, модули или сниппеты, которые добавляют дополнительную функциональность сайту. Группы ресурсов позволяют группировать разделы страниц вместе, облегчая навигацию для пользователей, посещающих сайт. Эти основные понятия формируют основу работы modx revolution, необходимую для понимания каждому, кто хочет максимально использовать эту мощную платформу.

Чанки и сниппеты

Чанки — это куски html кода, которые отображаются один или несколько раз по всему сайту.

Сниппеты - кусок кода, предназначенный для выполнения конкретной задачи, например отправка данных формы.

Сниппеты значительно облегчают жизнь разработчикам, позволяя им быстро развертывать часто используемые функции без необходимости вручную набирать каждую отдельную строку каждый раз, когда им нужно развернуть подобную функцию в другом месте в своем проекте.