...

Что за программа modx

MODx. Введение

Это очень функциональная, расширяемая и удобная система управления сайтом (CMS). Сами разработчики позиционируют ее даже как систему разработки сайтов (CMF). Это движок нового поколения, который изначально рассчитан для создания проектов Веб 2.0

Основные особенности

  1. Использование Ajax (как в пользовательской, так и административной части)
  2. Opensource (GNU GPL)
  3. Встроенный механизм SEO (управление ключевыми словами и мета-тегами)
  4. Встроенная поддержка ЧПУ
  5. Управление пользователями на сайте с возможностью их группировки
  6. Привязка документов к группам пользователей
  7. Неограниченная вложенность и количество документов
  8. Поддержка документов разных типов
  9. Удобное дерево документов
  10. Управление параметрами для документов
  11. Выводимый HTML-код полностью под контролем. Все шаблоны легко меняются
  12. Гибкие стандартные инструменты для создания меню, списков и форм

Требования

PHP 4.3.10 или старше. На PHP 5 также сложностей не замечено. Также в ближайшем будущем разработчики обещают специальные возможности именно для PHP 5.
MySQL 4.1.x или старше.
Прямые руки

Подробнее

Все же копнем немного глубже, чтобы было еще понятнее.

Ajax

MODx изначально имеет встроенные библиотеки Scriptaculous, Prototype, Mootools. Ajax активно используется в администраторской части. В списке документов изначально показываются только необходимые пункты (родительские документы), а затем при необходимости подгружаются дополнительные (дочерние). Также список динамически обновляется при операциях редактирования, создания, удаления, публикации документов.

SEO

Великолепный механизм управления ключевыми словами. Есть общий управляемый список ключевых слов, которые затем в каждом документе просто выбираются. При этом движок уже сам прописывает все на странице, без каких либо добавлений кода.

ЧПУ

Никаких дополнительных надстроек не нужно. Вы просто включаете использование ЧПУ и наслаждаетесь. По умолчанию используется номер документа (ID), если вы не зададите специальный псевдоним. Для англоязычных статей можно использовать возможность автоматического создания псевдонима по заголовку.

Кроме прочего MODx позволяет задать необходимое расширение для страниц (например .html).

Пользователи, группы и документы

Разработчики разделили всех пользователей на Веб-пользователей (кто использует сайт) и менеджеров (кто управляет сайтом). Права менеджеров определяются ролями и легко управляются.

Каждый пользователь может входить в одну или несколько групп.

Каждый документ можно определить в группу документов (одну или несколько).

Для каждой группы пользователей можно определить одну или несколько групп документов.

Таким образом, можно определить, кто какие документы может использовать и что с ними делать. Очень гибко!

Документы

Документы могут быть не только в HTML формате, но также и css, javasript, xml и любого другого, что можно определить соответствующим типом (Content-Type). Затем эти документы могут быть преобразованы в другой необходимый формат. Так можно сделать библиотеку, которая хранит все книги в формате XML, а посетителям выдает в любом удобном виде (doc, pdf, txt, rtf и т.д.). В сайтах на MODx можно увидеть, что файлы css и javasript также делают отдельными документами, чтобы ими было удобно управлять.

Отдельным типом документа является ссылка, которая может указывать как на внешние страницы, так и на внутренний документ.

Дерево документов

Все документы выстраиваются в общее дерево. Благодаря Ajax оно загружает только видимые документы, а при открытии какой-либо ветки быстро загружает дополнительные. Дерево показывает тип документа, опубликован он или нет, отображается ли в меню. Права клавиша вызывает контекстное меню. Удаленные документы показываются зачеркнутыми, а окончательно удаляются специальной кнопкой.

Параметры документов

Это просто замечательная штука! У вас никогда не появлялось в голове мысли «эх, а добавить бы вот какое-нибудь примечание автора для статьи, ну и чтобы у каждой статьи оно было свое»? MODx предлагает идеальный вариант. К документам (а если совсем откровенно — шаблонам) можно добавить любое количество параметров/виджетов. При этом не просто текстовое поле, а очень разнообразный список вариантов: текстовая строка, поле с визуальным редактором, выпадающий список, прикрепляемый файл, ссылка и т.д.

Хотите добавить к документам стоимость? Запросто!

Шаблоны

Шаблоны во многом определяют удобство разработки. Кто пытался изменить стандартный вывод статей в Joomla и не только – поймет. MODx все шаблоны хранит в одном месте и предлагает инструмент для управления. Удобный и простой язык шаблонов делает работу легкой и быстрой.
Например:

[(site_name)] | [*pagetitle*]

Все понятно, верно?

Для различных расширений существуют свои небольшие шаблоны, которые также легко управляются.

Стандартные инструменты

В стандартном комплекте предлагается сразу несколько очень гибких расширений:

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

Wayfinder – инструмент для организации меню. Дает возможность организации как простого меню, так многоуровневого и выпадающего. Легко изменяется.

eForm – управляет работой форм в MODx. Позволяет организовать любую форму и обработку для нее. Может просто отправить вам на почту введенную информацию или обработать для получения какого-то результата (новый документ создать с заполненной информацией).

Jot – механизм для сбора комментариев пользователей.

Заключение

MODx до сих пор еще не дорос до первой версии, но это уже серьезный взрослый инструмент. Он позволяет быстро создавать сложные сайты и практически мгновенно простые.

Немного дегтя

  1. Производительность падает при росте числа документов. Это становится очень явно, когда документов около 5000. Все начинает очень долго работать, не смотря на Ajax.
  2. Мало серьезных готовых решений. Они активно появляются конечно, но пока факт остается. До сих пор нет решения для электронного магазина. Недавно появилось одно решение, но пока использовать его не представляется возможным.
  3. Грабли с русским языком периодически проявляются. То с кодировочкой проблемы, то некоторые расширения не поддерживают. Тот же AjaxSearch (поиск) очень показательно не хочет работать.
    Впрочем работа над этими моментами активно идет, а прямые руки всегда приходят на помощь. Пожелаем MODx решить все плохие моменты, а хороших сделать еще больше.

Ссылки

Яркий рабочий пример: DeForum

Знакомство с MODX

В наши дни выбор систем управления контентом (CMS) настолько велик, что невольно теряешься. Причем, качество системы не зависит от того платная она или нет, а принятое решение затем надолго вас привязывает к выбранной CMS.
Предлагаю вашему вниманию перевод статьи английского веб-разработчика Марка Дженкинса, открывшего для себя MODX после многих лет разработки в различных системах.
Вначале идет перевод статьи, затем — некоторые комментарии по тексту.

Я только что закончил свой второй проект на платформе MODX, и думаю, самое время изложить свои мысли. У меня сложилось такое впечатление, что в web-индустрии MODX преимущественно не имеет широкую известность, отчасти поэтому, в целях просвещения, я и пишу эту статью.

Что такое MODX?

MODX – это система управления контентом с открытым кодом. Она построена на основе PHP и MYSQL, поэтому работает практически на любом сервере. Как и в WordPress существуют две версии: MODX Revolution (как wordpress.org, версия для скачивания и установки на ваш сервер) и MODX Cloud (как wordpress.com).
MODX – непритязателен: не важно, где располагаются шаблоны, как они организованы или где размещается контент. Это гибкая система, позволяющая работать как вам угодно.

Где можно использовать MODX?

Выбор систем управления сайтами (CMS) довольно широк. Раньше я пользовался WordPress, Perch, Expression Engine и Kirby, так же как Shopify и Magento для интернет-магазинов. Я использую WordPress и Perch на постоянной основе и обе системы доказали свою надежность и простоту использования.
Отсюда возникает вопрос: «Зачем вообще я должен вникать в MODX?»
Думаю, будет честно, если скажу, что я довольно хорошо знаком с WordPress, т.к. делал в этой системе практически все: блоги, 5-ти страничные сайты, мульти- региональные сайты с сотнями страниц. Разрабатывая на WordPress большие сайты, я сталкивался со многими трудностями, например: структура постоянных ссылок и систематика могут быть ограничены. Хотя в последние годы CMS значительно улучшилась, но все же чувствуется, что это не подходящий инструмент для работы с огромными и сложными сайтами.
Именно здесь MODX предстает во всей красе. Пока WordPress собирает структуру (пользовательские типы постов, систематика, темы) MODX предлагает пустую оболочку, готовую подстроиться под любые ваши потребности.
То, с какой легкостью MODX работает с шаблонами, впечатляет. Не нужно создавать шаблоны с заданным именем файла или размещать их в определенной папке, а синтаксис MODX обеспечивает чистоту и доступность кода.

Я перехожу с WordPress. Сложно будет переучиваться?

  • Ресурсы – веб-страницы (ресурсами также могут быть документы, ссылки и проч.)
  • Шаблоны
  • Переменные шаблона – эквивалент пользовательских полей в WordPress
  • Чанки – повторяющаяся на разных страницах HTML- разметка (например: шапка, подвал, боковые панели и т.д.)
  • Сниппеты – динамические куски PHP кода.

Во-вторых, MODX использует свой синтаксис тегов. Поначалу, я думал, зачем вообще разработчики MODX заморачиваются над созданием своего синтаксиса, но попробовав на практике, стало понятно. Он позволяет содержать код шаблона чистым и понятным (по крайней мере, лучше, чем эти ужасные непоследовательные функции WordPress).

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

Моя команда не испытывала никаких трудностей с последним проектом. Мы использовали этот .gitignore файл для исключения всего, кроме папок assets и core.
В базе данных не хранятся пути к файлам, поэтому можно запросто перемещать базы данных во время разработки.

Есть ли недостатки у MODX?

Как я уже отмечал в этой статье, изучить MODX несложно. Некоторое время займет привыкание к терминологии и способам реализации тех или иных вещей.
Документация достаточно хорошая, хотя в поисках ответов на некоторые вопросы вам придется постараться. Шансы найти ответ по возникшей проблеме в WordPress, вероятно, в несколько раз выше, т.к. численность сообщества MODX поменьше.
Тем не менее, я нашел сообщество в Твиттере, которое оказалось очень полезным. Отправив несколько вопросов группе #MODX, я каждый раз получал хотя бы один ответ, который направлял меня в нужном русле.
Процесс установки MODX более сложный, чем у WordPress. Например, чтобы установить систему локально, я клонировал наш репозиторий, затем скопировал туда файлы MODX, настроил файлы конфигурации, запустил установку, подправил некоторые файловые разрешения и снова запустил установку. По сравнению с WordPress, поднятие и запуск MODX немного витееваты.

Заключение

Пока я еще новичок в MODX и должен многое изучить, в конечном итоге, я понимаю, что нашел добротную и надежную CMS, предлагающую гибкость, которая мне нужна.
Я без сомнений могу порекомендовать ее для бизнеса с большими веб-сайтами на сотни страниц. И уже с нетерпением жду погружения в следующий MODX проект…

Комментарии от переводчика

  1. Автор статьи выделяет две версии MODX: Revolution и Modxcloud, между тем как официальное разделение происходит на Revolution и Evolution.
    Версия MODX Revolution рекомендуется к использованию всеми пользователями, включая новичков, это современная, надежная система. Совершенно новый API базы данных на основе xPDO обеспечивает эффективный и простой способ чтения, создания и редактирования всех MODX объектов. С помощью одного простого запроса можно манипулировать данными нескольких MODX таблиц.
    Версия MODX Evolution также достаточно надежна и стабильна, постоянно обновляется, но является уже устаревшей, и подходит для сайтов, которые уже работают на ней или для тех веб-хостов, где ограничена оперативная память 8M или 16M, т.к. для Revolution требуется минимуму 32M.
    Что касается Modxcloud, то это дополнительный сервис от команды MODX — виртуальный хостинг на базе уже встроенной самой последней версии MODX Revolution. Хостинг рассчитан на серьезные проекты с большой нагрузкой на сервер, хотя есть возможность выбрать бесплатный вариант размещения (очень даже неплох для получения опыта работы с MODX). Разместив сайт на MODXcloud, процесс обновления в дальнейшем происходит по клику, можно сказать, вопрос обеспечения безопасности сайта здесь вне конкуренции.
  2. Когда автор говорит о хорошей документации, речь, конечно, идет о англоязычной версии.
    Тем не менее, русскоговорящих сайтов по системе MODX сейчас довольно много, так что разработчики не будут одиноки.
  3. Автор описывает трудности установки MODX на локальный сервер, но на самом деле все гораздо проще: сервер с установленным PHP и cgi не досаждает с вопросами доступа и процесс установки длится 3-5 минут.
    А вообще, разработчики MODX рекомендуют пользоваться расширенным дистрибутивом установки (advanced вместо traditional), что на порядок повышает безопасность вашей системы: вы можете ядро системы установить в папку, недоступную из веба, а папки бэк-энд менеджера и коннекторов переименовать как вам угодно.

При подготовке материала использовались источники:
https://habr.com/ru/articles/13660/
https://habr.com/ru/articles/220127/

Оцените статью