Практически
все сайты я делаю на CMS MODX. Попробую объяснить, почему я использую именно этот Open Source движок.
Так сложилось, что сам я ни разу не программист. Ну не адаптирован у меня мозг ко всем этим алгоритмам, коду, скриптам и т. д. Долгое время делал статичные сайты в Dreamweaver и даже не заморачивался ничем сложнее HTML. Да и то - даже этот простой язык был долгое время для меня каким-то шаманством. Ясное дело, что со временем я научился разбираться во всех этих тегах, но всё равно, посади меня тогда за простой блокнот и скажи сверстать мало-мальски вменяемую страницу с нуля, у меня бы опустились руки.
Но можно и зайца научить курить! По прошествии трёх лет я всё-таки смог вполне сносно писать html-странички со всеми сопутствующими css-стилями и обращаться за помощью к Dreamweaver только в совсем уж запутанных случаях. Наконец, вздохнул спокойно, поскольку пришло ощущение контроля над кодом и вещи, которые ставили ещё год назад в тупик, теперь выглядели смешными и щёлкались как семечки. Настала благодать, но, как водится, ненадолго.
Развитие технологий шло своим чередом и пришлось снова нагонять прогрессивное человечество. Клиенты стали более требовательными как в части дизайна и вёрстки, так и в части управления сайтом. Если раньше считалось нормальным, чтобы заказчик сам правил html- или txt-файлы сайта при добавлении новостей или обновлении контента, то теперь все стали требовать систему управления, в просторечии, движок с админкой, текстовым редактором и т. д.
Поразмыслив над печальными перспективами статических сайтов, я понял, что нужно перебираться на новые рельсы и изучать PHP. Было куплено несколько книг по данному предмету и совершена попытка создать что-нибудь посерьезней, нежели скрипт, выводящий на страничке «Hello, world». Как вы уже, наверное, догадались, большого успеха достичь не получилось.
Вот тогда и пришла в голову идея глянуть в сторону готовых CMS, для эффективной работы с которыми, было достаточно базового знания PHP и его взаимодействия с MySQL.
Итак, задача: найти CMS, которая отвечает следующим требованиям:
- Легка в изучении.
- Не требует от разработчика программистских талантов.
- Логична по внутренней структуре.
- Интуитивно понятна заказчику, как будущему менеджеру сайта.
- Легко расширяется за счёт дополнительных модулей.
- Имеет хорошее русскоязычное сообщество.
- Имеет возможность интеграции в себя решений, разработанных без использования её API.
- Имеет простую шаблонизацию.
- Не вносит ограничений в вёрстку и дизайн.
- Быстра в работе и не грузит сервер.
- При всём при этом, была бы бесплатной.
Многовато, скажете! Соглашусь, непросто было найти CMS, полностью отвечающую этим требованиям. Но, как понимаете, такая система была найдена и ей оказалась именно MODX. Давайте разбираться.
Легка в изучении и не требует от разработчика быть суперпрограммистом
Это точно! Даже мне, как у же было сказано, человеку далёкому от программирования, разобраться в установке и настройке данного продукта ничего не стоило.
Логична по внутренней структуре и понятна заказчику
Несомненно. Дерево документов, как один из основных инструментов, абсолютно логично и наглядно представляет собой структуру сайта. Каждый пункт = страница. Кликаешь - открывается редактор. Никаких отдельных плагинов для меню, новостей, футеров и т. д. Всё под рукой и на виду. Конечно, можно установить отдельный модуль по управлению чем-нибудь, но это, зачастую, только перегружает интерфейс и убивает одно из самых главных преимуществ MODX - наглядность.
Легко расширяется за счёт дополнительных модулей
Модулей, расширений и плагинов к данной системе огромное количество. Для того, чтобы в этом убедиться достаточно зайти в
репозиторий на официальном сайте, где все дополнения удобно разложены по полочкам. Не говоря уже об огромном количестве недокументированных решений, которые то и дело всплывают на том или ином форуме или ресурсе, посвященному данной CMS.
Имеет хорошее русскоязычное сообщество
И даже не одно! Есть, как
официальное, так и
неофициальное сообщества и даже
клуб, которые борются за право являться самыми-самыми, что порождает полезную конкуренцию. Ведь каждое постоянно обновляется и живёт активной жизнью!
Имеет возможность интеграции в себя решений, разработанных без использования её API
Это вообще, пожалуй, одно из самых интересных свойств MODX. Случается так, что я иногда вынужден привлекать к разработке сторонних программистов, совершенно не знакомых с MODX. Так вот наш разговор всегда идёт по стандартной схеме:
- А какой движок?
- MODX.
- Ой, а я не знаю его.
- Да и не нужно! Ты просто напиши скрипт - я его сам интегрирую.
И это говорю я - человек, далёкий от программирования! А всё дело в том, что интеграция любого PHP скрипта в MODX заключается в создании дополнительного модуля («сниппета», по терминологии MODX), куда PHP код зачастую достаточно просто скопировать из исходника. Даже не адаптируя под движок, и это будет работать! Естественно, при использовании API всё будет писаться проще, крутиться быстрее и безопаснее, но факт остается фактом - чтобы реализрвать какой-либо функционал в рамках MODX совсем необязательно быть его знатоком.
Имеет простую шаблонизацию
И это правда! Шаблон MODX представляет собой простой HTML-код с плейсхолдерами, которые распознаются системой и могут выводить тот или иной контент.
В шаблоне MODX нет и не может быть никаких ограничений по макету, вёрстке, дизайнерским решениям и т. д., что было, пожалуй, одним из самых главных моих требований. В MODX разработчик абсолютно ничем не ограничен в плане дизайна и вёрстки. Ну кроме самого HTML и CSS, конечно! Поскольку шаблон представляет собой произвольный HTML-код, не требующий соблюдения никакой разметки, ваять можно всё, что душа пожелает!
Быстра в работе и не грузит сервер
Тут надо оговориться. Дело в том, что в MODX присутствуют две ветки развития. Есть MODX Evolution и MODX Revolution. Если первая развивается довольно давно, то вторая вышла на рынок в 2010 году. Внутренние различия у них довольно большие, хотя принципы работы с ними схожи. И если Revo довольно требовательна к серверным ресурсам (но и рассчитана на более серьёзные проекты), то Evo - более лёгкая.
В большинстве случаев я использую пока именно Evo, как систему идеально подходящую для относительно небольших и корпоративных сайтов. Хотя и на довольно тяжёлых и посещаемых ресурсах она ведёт себя выше всяких похвал (
http://jpfmw.ru/ или
http://rosgeroika.ru/).
При всём при этом, была бы бесплатной
Да-да! Все эти прелести к тому же совершенно бесплатны и распространяются по лицензии GNU GPL.
После всего вышесказанного, думаю, вопрос, почему я использую MODX, излишен )).