Maksoft CMS – Theme v1 Architecture дефинира ясна граница между engine логиката и theme представянето. Архитектурата гарантира:
Maksoft CMS – Theme v1 Pipeline
/engine
/app
/runtime
ThemeRuntime.php
LegacyExecution.php
/render
ShortcodeEngine.php
/extensions
LegacyPageUrlExtension.php
/theme
(future: ThemeBootstrap.php)
/themes
/ms
_bootstrap.php
/base
/none
index.php
/blocks
gallery.php
hero.php
cta.php
cms_assets.php
functions.php
page.php
↓
resolveTheme()
↓
load theme.json
↓
include theme index.php
↓
ThemeRuntime::boot()
↓
$o_page->hook(...)
↓
render_assets()
loader.php
↓
init_page_blocks()
↓
PageData
↓
ThemeMapper
↓
ViewData
↓
theme/index.php
↓
block templates
↓
HTML
↓
page cache
view ├ context ├ auth ├ user ├ user_context ├ site ├ page │ └ streams │ └ main │ └ blocks[] └ theme
foreach ($view['page']['streams']['main']['blocks'] as $block) {
include $view['theme']['dir'].'/blocks/'.$block['type'].'.php';
}
ThemeMapper добавя стандартни DOM markers за JS lifecycle:
data-block data-id data-editable
Theme JavaScript инициализира функционалност чрез:
document.querySelectorAll("[data-block]")