1) дизайн, js - править непосредственно через файлы;
2) блоки хранить в базе данных: напр. id, caption, content, position, где position - позиция;
content - содержимое блока;
3) для редактирования контента можно использовать wysiwyg редактор.
Это, если вкратце.