Чисто моё мнение о MODx Evo (Revo не смотрел):
достоинства MODx заключаются в том, что он имеет неплохой менеджерский интерфейс, древовидную структуру документов, которая покрывает большинство задач, гибкую систему шаблонов, разумный набор плейсхолдеров.
Так же имеется механизм назначения ролей. Правда слегка глючный.
Простота (кажущаяся) добавления программного кода.
Его ниша - различные сайты (кастомизация здесь на высоте), для которых вполне подходит древовидная структура, и, контентом которого заведуют менедежры.
Тем не менее использование встроенных сниппетов нахожу не удобным, а документацию минималистической, если не сказать больше -- ущербной. Не знаю кто как, а я зачастую читаю описание параметров сниппета, и не понимаю, как его использовать. Может я тупой, а может просто ещё не пришло понимание, как оно работает.
При работе со сниппетами требуются постоянные вызовы сторонних чанков, в которых требуется расставить плейсхолдеры нужным тебе образом. Чанки плодятся со страшною силою. Тем не менее, программист всё равно ограничен рамками этих плейсхолдеров, и выдачей сниппетов.
Если хочется чего-то большего, то следует писать свой сниппет, опять же, либо ограничиваясь рамками API, либо отправляя запросы напрямую к базе. Второе -- менее предпочтительно, т.к. может привести к несовместимости при обновлениях, которые затронут метаданные базы.
Многие вещи, которые можно сделать легко и просто, требуют изворотливости, и знаний внутреннего устройства MODx.
Резюме: для своих собственных задач лучше воспользоваться фреймворком. Фреймворк решает основные задачи, такие, как связь с базой данных, борьба с SQL иньекциями, валидация форм, фильтрация данных, полученных из форм, и много чего другого, что является рутиной для программиста на каждый день.
У фреймворка практически нет недостатков. Кроме одного. Время на старт проекта может увеличиться. И придётся реализовывать менеджерский доступ самостоятельно. Хотя WISIWIG редакторов для этого достаточное количество.