dynamically add new content blocks