Also an deiner Stelle würde ich die phpBB Templatesklasse nehmen, da ich und wahrscheinlich die anderen auch, net mit der Fremden Templateklasse auskennen.
Bei der Umstellung auf die phpBB-Templateklasse sollte nur geringfügig ein Umbau vorhanden sein.
Bei der TemplateKlasse von phpBB ist es wichtig bei der Instanzerzeugung den Pfad zum Templateverzeichnis als einzigstes Argument zu übergeben.
Wenn du nun eine Seite zum Parsen holen möchtest wie folgt vorgehen:
Um Variablen zu parsen im Template dann die Methoden assign_vars() oder assign_block_vars() verwenden.
assign_vars benötigt nur ein Paramater (ein Array) in dem wie bei deinem obigen Beispiel vorzugehen ist:
assign_block_vars benötigt zwei Parameter. 1.) Das Schlüsselwort und 2.) wieder ein Array wie bei assign_vars().
zu 1.) Das Schlüsselwort bestimmst du wie folgt:
Im Templates sollte es so aussehen:
Code: Alles auswählen
<!-- BEGIN schluesselwort -->
<h1>{schluesselwort.VAR]</h1>
<!-- END schluesselwort -->
Die Kommentare müssen da sein und das Schlüsselwort solltest du selbst bestimmten. Wichtig ist nur, das zwischen den Kommentaren stehende HTML-Code nur dann angezeigt wird, wenn du in der php-Datei auch dies zuweist. Die Variablen sind wie immer zu bekennzeichnen, aber mit dem unterscheid, das das schlüsselwort gefolgt mit einem Punkt (.) davor stehen
kann.
Wenn du globale Variable in den Code einschleusen willst, bracuhst du das Schlüsselwort vor der Variable auch nicht, aber es wird auch nur dann angezeigt, wenn der assign_block_vars() mit dem zuständingen Schlüsselwort definiert wird.
Als Praxisnahes Beispiel empfehle ich dir mal die Login-Tabelle auf der index_body.tpl zu betrachten.
Dort werden globale Variablen im HTML Code verwendet, welche zwischen den Kommentaren steht. Ist der User angemeldet, wird der Block nicht angezeigt, wenn er aber nicht angemeldet ist, wird dieser Angezeigt.
Für ne Zuweisung sieht der PHP-Code wie folgt aus:
Code: Alles auswählen
$tpl->assign_block_vars('schluesselwort', array('VAR' => $var));
und nun zum Parsen:
Du rufst die Methode pparse() auf die als Paramter den Namen der Template haben will, den du bei set_filenames() als erstes angegeben hast:
das wars schon
Mfg
MrMind