Во-первых, создайте чистые HTML-шаблоны с сильным подходом к семантике, определите базу CSS по умолчанию, которая работает хорошо независимо от выбранной темы (позиции базовых элементов, базовые изображения, определения шрифтов и т. Д., И т. Д.), И определите вашу настройку по умолчанию. тема в отдельном файле
Теперь есть два подхода:
Позвольте им настроить внешний вид некоторых элементов и сохранить их настройки в БД.
http://acko.net/dev/farbtastic - приятный виджет для выбора цветов элементов
Если вы хотите пойти дальше, например перетаскивайте позиции элементов на макете, используйте f.ex http://jqueryui.com/ (или scriptcaluous или некоторые другие) и сохраняйте их позиции в db через httprequest on drop
Пусть они напишут свой файл CSS
Если вы хотите, чтобы пользователь писал файл css, я бы разрешил им переопределять только определенные классы элементов, но я не знаю, чего вы действительно хотите достичь и как далеко вы хотите зайти Тематика, предоставьте больше деталей. Я не понимаю, почему они загружают CSS на диск, просто помещают их в текстовую область и сохраняют в базе данных.
Независимо от того, как вы выбираете, вы должны проверить, как он работает на http://tumblr.com или http://storytlr.com, чтобы получить представление о предмете.