Вёрстка делится на секции: одна секция - один HTML-файл и затем всё соединяется при помощи склейки на стороне сервера или через AJAX на стороне клиента.
Секции шаблона:
1. HTML (тип документа, язык, схемы): 1 файл
=>1.1. HEAD (CSS,JS,META-тэги): 1 или несколько файлов
=>1.2. BODY (сетка размещения - зависит от типа страницы): 1 или несколько файлов
==>1.2.1. Block1....BlockN (шапка, меню, основной контент, футер, блоки рекламы, блоки новостей и т.д.): кол-во файлов = кол-ву блоков = N
Каждая секция и каждый блок (Block1..BlockN): это HTML-код в отдельном файле.
Потом всё это собирается для каждой страницы как детали конструктора.