Architektura
WBengine drží průchod požadavku malý a přehledný. Objekty Application, Site, Section a Box tvoří stejný strom jako aplikační kód.
Strom objektů
- Application je kořen požadavku a vlastní sdílené služby.
- Site představuje nalezenou stránku, její metadata, přístupová pravidla a menu.
- Section je pojmenovaná oblast layoutu, například
header,centralneboapi. - Box je PHP třída a metoda určená řádkem v
cms_boxes.
Layout vykreslí výstup sekcí. Box může vykreslit šablonu přímo nebo nejdřív načíst model. Nové funkce zařazujte do tohoto stromu a používejte existující jmenné prostory App\Box\<Section>.
Průběh požadavku
public/index.php
Application::run()
nalezení Site podle URL
kontrola přístupu a vhodnosti pro page cache
sestavení aktivních Section
nalezení nakonfigurovaných Box
volání metody Box a vykreslení šablony
vykreslení layoutu webu
Weby, sekce a boxy jsou konfigurační data. PHP třídy definují opakovaně použitelné chování. Jednoduché změny stránek tak nevyžadují úpravu routeru.