Я не предлагаю использовать CMS в качестве фреймворков, если вы работаете над чем-то, кроме тривиальных веб-сайтов типа блогов / WordPress, которые на самом деле не нуждаются в большом количестве пользовательских функций.
Код CMS обычно не расширяем, не придерживаясь правил кодирования и дерьма.Каркасы типа Django и Zend очень высокого качества.На самом деле вы сможете сделать что-то полезное за разумное время, вместо того, чтобы покончить с собой, пытаясь настроить CMS, которая не предназначена для настройки.