Другими словами задача стояла такая
- Создать симбиоз ядра системы и темы оформления, когда не только ядро жестко задает правила поведения и отображения элементов системы, но и тема активно управляет видимостью и управлением элементов.
- Позволить дизайнеру воплощать любые дизайнерские идеи без оглядки на ядро. То есть, хочет чтобы, верхние блоки отображались слева, правые и левые блоки были расположены вместе справа - нет проблем.
- Не тормозить продвинутых пользователей в реализации различных способов форматирования текста, таких как HTML - различных версий. XHTML и даже XML, то есть наиболее полно реализовать CMS, так как CMS - это система управления контентом, а вот отображение этого контента может быть любым.
- Решив задачу 2 и 3 увести систему от табличного дизайна и подготовить к отображению на различных устройствах, таких как мобильных, наладонных и так далее...
- Жестко разграничить понятия оформление и данные.
[b]Итог[/b]
Выполнив все поставленные задачи, мы можем смело сказать, что система не будет тянуть пользователей назад, даже тогда когда все дружно решат перейти на DIV, никаких изменений в движке не потребуется нужно будет только поправить дизайн.
[b]Реализация и как всё работает[/b]
В пользовательской теме оформления должен присутствовать файл index.html. Это обычный HTML файл, предназначенный для формирования внешнего вида системы. Соответственно надобность в файлах: header.html, footer-close.html и footer-open.html отпадает.
Синтаксис, простейший файл оформления будет иметь вид:
Естественно, верстальщик и дизайнер могут наполнить его любым HTML оформлением и применить все возможные и известные приемы верстки. Как мы видим, табличная структура отсутствует, и мы можем все построить на дивах (DIV) или переписать код в XHTML.
В данном случае и в целом все понятно, просто и наглядно. Остается только объяснить какие переменные вида {%XXXX%} за что отвечают. Расставить эти переменные естественно можно по всему файлу, в каком угодно порядке.
{%HEAD%} - Стандартное формирование шапки - меты и титлы, а также содержание, которое присутствует в системе по умолчанию.
{%MODULE%} - Нарезка для модуля, который должна подставить система.
{%LICENSE%} - Копирайты системы.
{%BLOCKS banner%} или {%BLOCKS b%} - Верхний банер.
{%BLOCKS left%} или {%BLOCKS l%} - Левые блоки.
{%BLOCKS center%} или {%BLOCKS c%} - Верхние блоки.
{%BLOCKS down%} или {%BLOCKS d%} - Нижние блоки.
{%BLOCKS right%} или {%BLOCKS r%} - Правые блоки.
{%BLOCKS foot%} или {%BLOCKS f%} - Нижний банер.
{%BLOCKS time%} или {%BLOCKS t%} – Время генерации страницы.
{%BLOCKS none,ХХХ%} или {%BLOCKS n,ХХХ%} - Произвольный блок системы или свободный блок без оформления, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS standart,ХХХ%} или {%BLOCKS s,ХХХ%} - Произвольный блок системы или свободный блок с оформлением свободного блока, где ХХХ - это либо ID блока, либо название файла блока.
{%BLOCKS message%} или {%BLOCKS m%} – Сообщение на главной странице.
{%BLOCKS variables%} – Анализатор переменных.
{%BLOCKS query%} – Анализатор запросов в базу данных.
Новая система оформления тем будет доступна, начиная с версии SLAED CMS 2 Pro.

3.5
Все там реализовано...