PureWiki verarbeitet Benutzeranfragen nach Inhalten (das öffentliche Wiki) mithilfe einer effizienten Routing- und Rendering-Engine. Dieser Leitfaden erklärt, wie das System eine URL in eine vollständig realisierte HTML-Seite übersetzt.
Der Router (index.php)
Jede Anfrage durchläuft die index.php. Sie normalisiert die angeforderte URL und bestimmt, ob der Pfad auf /setup, eine Dashboard-Route oder eine reguläre Wiki-Seite verweist.
purewiki/frontend/renderer.php) delegiert.Die Rendering-Engine
Die Funktion renderPage() ist das Herzstück der PureWiki-Generierung. Sie übernimmt:
- Datenextraktion: Parst die
page.json, um Metadaten und Blöcke abzurufen. - Inhalts-Parsing: Blöcke werden über
purewiki/frontend/parser.phpin semantisches HTML umgewandelt. - Theme-Injektion: Die aggregierten Daten und der HTML-Inhalt werden an das aktive Theme-Template übergeben.
- Platzhalter-Ersetzung: Ersetzt spezialisierte Platzhalter (z. B.
{{ content }},{{ assets_head }}) innerhalb der Theme-Ausgabe.
Der Caching-Mechanismus (/cache)
Um blitzschnelle Antwortzeiten zu ermöglichen, verwendet PureWiki ein robustes statisches HTML-Caching-System.
Sitemap (sitemap.xml)
PureWiki generiert dynamisch eine sitemap.xml, um die Indexierung durch Suchmaschinen zu unterstützen. Sie wird aus dem Wiki-Root ausgeliefert und folgt dem sitemaps.org Standard.
getCachedPagesTree()) und schließt private Seiten automatisch aus. Die Priorität wird dynamisch basierend auf der Seitentiefe berechnet.