Стоит довольно интересная задача разработать CMS с конструктором, в админке создаются страницы, в редакторе страницы необходимо реализовать drag and drop наполнение контента и контейнеров виджетов шаблона (плюс шаблоны могут быть разные, в одном сайдбар есть, в другом нет и т.д.).
Вопрос стоит - как реализовать рендеринг, как хранить эти набросанные виджеты, может, кто сталкивался с подобным?
редактор передает на сервер JSON - с разположением блоков и контентом, затем на основе этой инфы происходит рендринг. Результаты можно (и стоит) кешировать.
Посмотрите как это реализовано с клиентской стороны в sir-trevor.js, идея должна быть понятна.