Class Syntax
Einleitung:Ablauf:
- convertContent( $content (Template mit Inhaltseite), $firstrecursion (true) )
- Interne Variablen setzen $this->content = $content; und $this->cat = $cat;
- ist $firstrecursion = true preparePageContent() ausführen
- Nach allen Syntax und Pluginplatzhaltern suchen, die keine Syntax und Pluginplatzhaltern enthalten oder keinen | haben und mit ihren Inhalt ersetzen.
Das Läuft so lange bis nichts mehr gefunden wird, es wird berücksichtigt das im Inhalt auch wieder Syntax und Pluginplatzhaltern enthalten sein können.
Auserdem werden alle <script>????</script> und <style>????</style> Tags mit einem dummy Ersetzt da sie {, }, [ und ] enthalten können was zu Problemen mit der Syntax und Pluginplatzhalter Suche führt. - alle <script>????</script> und <style>????</style> wieder einsetzen
- mozilo Platzhalter, die mit preparePageContent() geschützt wurden, wieder herstellen
- alle -html_???? die mit preparePageContent() erstelt wurden in HTML Code wandeln
- wenn preparePageContent() benutzt wurde nach alle Blockelementen die Zeilenwechsel entfernen und alle geschützten Zeichen wieder herstellen
- wenn mozilo Syntax benutzt wird.
Alle Aufeinander folgenden <li> und <ol> die mit Liste und Numliste erstelt wurden gruppieren.
Alle Absatzlinks erstellen
Syntaxelemnte:
link mail kategorie seite absatz datei galerie bildlinks bildrechts bild hr ([----]) links zentriert block rechts fett kursiv fettkursiv unter durch ueber1 ueber2 ueber3 liste numliste liste1 liste2 liste3 html tabelle include farbe
ToDo:
die gibts auch als Variable {CSS_FILE} {CHARSET} {FAVICON_FILE} {LAYOUT_DIR} {BASE_URL}
{WEBSITE_TITLE} {WEBSITE_KEYWORDS} {WEBSITE_DESCRIPTION} {MAINMENU} {DETAILMENU} {SEARCH} {SITEMAPLINK} {CMSINFO} {TABLEOFCONTENTS}
getWebsiteTitle( {WEBSITE} {CATEGORY} {PAGE} {SEP} )
replacePlaceholders( {WEBSITE_NAME} {LAYOUT_DIR} {CATEGORY} {CATEGORY_URL} {CATEGORY_NAME} {PAGE} {PAGE_URL} {PAGE_FILE} {PAGE_NAME} )
CMS-Variablen im Editor {BASE_URL} {CATEGORY_NAME} {CATEGORY} {CATEGORY_URL} {PAGE_NAME} {PAGE_FILE} {PAGE_URL} {PAGE} {SITEMAPLINK} {CMSINFO} {TABLEOFCONTENTS}
# alle < und > die in einer page sind sollen so sein
$content = str_replace(array("<",">"),array("- html_lt~","- html_gt~"),$content);
# alle < und > in < und > wandeln damit sie nicht als html tags angezeigt werden
$content = str_replace(array("<",">"),array("<",">"),$content);
# alle Zeichen die ein davor haben sind geschützte Zeichen
$content = $specialchars->encodeProtectedChr($content);
# alle & die nicht zu entities gehören wandeln nach &
$content = preg_replace('/&(?!#?[a-z0-9] ;)/i', '- html_amp~', $content);
// Für Einrückungen
$content = str_replace(" ","- html_nbsp~- html_nbsp~",$content);
# Zeilenümbrüche sind in pages später html Umbrüche
$content = preg_replace('/(\r\n|\r|\n)/', '$1- html_br~', $content);
// Platzhalter ersetzen
$content = replacePlaceholders($content, "", ""); index.php
convertContent( $content, $firstrecursion ) Konvertiert alle Syntax/Pluginelemente
pluginSelfPlaceholderData( $placeholder, $replace ) Damit kann ein Plugin an sich selbst Daten übermitteln
insert_in_head( $data ) Setzt den in $data enthaltenen Text, im Template, im <HEAD> Bereich ein.
syntax_SYNTAXELEMENT( $desciption, $value ) Verarbeitet die moziloCMS Syntaxelemente.
syntax_user( $desciption, $value, $syntax ) Verarbeitet die vom User definierten Syntaxelemente.
splitContent( $content = false ) Zerlegt das Template in vor {CONTENT}, {CONTENT} und nach {CONTENT}.
preparePageContent( $content ) Bereitet den Content für convertContent() vor.
|
Nach oben