Seite 1 von 1

HTML-Codesegment mehrfach includen

Verfasst: Mo 05.Dez, 2005 17:26
von karstenkurt
Hallo,

hab schon überall gesucht, aber nicht das richtige gefunden. Ich habe ein Seitenmenü in meinem Board, welches ich in der viewforum, viewtopic, login, etc. anzeigen möchte.

Normalerweise würde ich das ja in der Overall_header machen, aber.....
Es gibt einen Bereich, wo das Menue halt nicht angezeigt werden soll. Das klappt auch schon, Menü ist auch fertig.
Ich möchte das aber nicht bei Änderungen in allen Tpls nachziehen, sondern an einer Stelle ändern.

Meine Frage nun, geht das. Das ich praktisch eine eigene TPL includiere? Wenn ja, was muss ich alles beachten?

Verfasst: Mo 05.Dez, 2005 23:09
von oxpus
??? Du willst eine TPL in einer anderen includieren? Habe ich das richtig verstanden?
Dann folgendes:
In der PHP-Datei, die die "Master-TPL" erstellt, füge ein include der PHP-Datei hinzu, die die "Tochter-TPL" erstellt.
In der includierten PHP-Datei wäre dann jedoch anstelle

Code: Alles auswählen

$template->pparse("body");
dieses hier einzutragen:

Code: Alles auswählen

$template->assign_var_from_handle("INCLUDE_FILE", "body");
und in der "Master-TPL" an der gewünschten Stelle dann

Code: Alles auswählen

{INCLUDE_FILE}
Das wäre dann auch schon alles.
Genau so wird z. B. auch die Schnellantwort eingebunden...

Verfasst: Di 06.Dez, 2005 04:12
von karstenkurt
Ah ja. Das werd ich dann mal ausprobieren:)

Verfasst: So 29.Jan, 2006 11:39
von karstenkurt
Super, das hat wunderbar geklappt. :)

Edit: Bis auf eine Kleinigkeit. Wenn ein Fehler auftritt, oder nach dem Editieren eines Topics, wird der Block nicht angezeigt. Hab mal nachgeschaut. Es wird die Datei message_body.tpl eingebunden, dort sind die Platzhalter drin. aber welche Php-Datei ruft diese Tpl auf?

Verfasst: So 29.Jan, 2006 18:44
von oxpus
Die message_body.tpl wird durch die functions.php aufgerufen, die Sprachelemente werden aber von der Datei eingesteuert, die die Nachrichtenroutinen benutzen!