Author Topic: Zwei Templates über eine TMPL_VAR ("CONTENT") ausg  (Read 551 times)

0 Members and 1 Guest are viewing this topic.

smueller0503

  • Guest
Zwei Templates über eine TMPL_VAR ("CONTENT") ausg
on: Tue, 08. July 2003 - 14:56:46
Ich habe ein kleines Problem mit der vlibTemplate-Klasse.
Ich habe ein Haupttemplate (z.B. MainPage) in der die Komplette Navigation und die Hauptseite steckt.
In einer Variable namens "CONTENT" soll nun eine andere Datei (z.B. SubPage) via Variablenübergabe geladen werden und in dem Haupttemplate angezeigt werden.

Code: [Select]

Beispiel

----------------

MainPage

TMPL_INCLUDE NAME=overall_header.tpl

...

TMPL_VAR NAME=CONTENT

...

TMPL_INCLUDE NAME=overall_footer.tpl



SubPage

pHier steht der eigentliche Inhalt mit Formattags .../p



Skriptdatei

?php

  $tmpl = new vlibTemplate$templatepath . subpage.tpl;

  $grabbedTemplate - $tmpl-grab;



  $tmpl = new vlibTemplate$templatepath . mainpage.tpl;

  $tmpl - setVarCONTENT, $grabbedTemplate;

  $tmpl-fastPrint;

?



Ausgabe im Browser

...

pHier steht der eigentliche Inhalt mit Formattags .../p

...



Ausgabe des Quelltextes

...

<p>Hier steht der eigentliche Inhalt mit Formattags ...</p>

...
[/code]

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Zwei Templates über eine TMPL_VAR ("CONTENT") ausg
Reply #1 on: Wed, 09. July 2003 - 00:07:44
Sorry, das ich es so direkt heraus sage, aber ich finde den Ansatz nicht so toll. Ich hoffe, ich weiß, was Du mit dieser Konstruktion hinbekommen willst ... modularen Aufbau ...

Ich würde das Problem so lösen:

Code: [Select]
TMPL_INCLUDE NAME=overall_header.tpl

...

verschiedene Templatevariablen

verschiedene Loops

...

TMPL_INCLUDE NAME=overall_footer.tpl

oder
Code: [Select]
TMPL_INCLUDE NAME=overall_header.tpl

...

!-- von mir aus mit tmpl_if gesteuert --

TMPL_INCLUDE NAME=subpage_1.tpl

TMPL_INCLUDE NAME=subpage_2.tpl

...

TMPL_INCLUDE NAME=overall_footer.tpl


Das was Du machst könnte gehen allerdings ist es imho ungeschickt, $tmpl zweimal zu benutzen bzw. einmal neu zuzuweisen.

Was ich als nächstes unsauber gelöst finde, ist das sich in "CONTENT" alles verbirgt. Den Ansatz könnte ich nur dann verstehen, wenn CONTENT aus einer Datenbank kommt. Tut es hier aber nicht.

Wenn diese Konstruktion eine Art CMS werden soll, dann verweise ich auf folgenden Post:
/forum/index.php/topic,182