Schrift
[thread]418[/thread]

HTML::Template, 2 Templates verbinden



<< >> 8 Einträge, 1 Seite
daywalka
 2005-01-28 22:58
#4246 #4246
User since
2004-02-03
15 Artikel
BenutzerIn
[default_avatar]
N'Abend Leute,

ich hab grad ein kleines Problem bzgl. des HTML::Template Moduls.
Und zwar gehts um folgendes: Um eine Webseite zu generieren, benutze ich 2 Templates. Das erste besteht hauptsächlich aus dem HTML-Header sowie der Navigation. Die einzelnen Elemente im Header müssen je nach Page geändert werden, sind also nicht statisch. Der Inhalt des zweiten Templates ist nur der Content der jeweiligen Page, ebenfalls dynamisch (deshalb ja auch Templates^^).
Das Problem ist nun, beide Templates zu verarbeiten und als Gesamtstück an den Browser zu senden.

Z.Z. löse ich das so, dass ich den Output des ersten Templates in ein File schreibe, den Inhalt des Files in ein Array einlese und diesen Inhalt dann dann dem zweiten Template als param übergebe.

Ziemlich unelegeant wie ich meine. Ich möchte die file access gerne weitgehend raushaben. Diesbezüglich irgendwelche Anregungen/Tips eurerseits?

t.i.a, daywalka
pktm
 2005-01-28 23:01
#4247 #4247
User since
2003-08-07
2921 Artikel
BenutzerIn
[Homepage]
user image
Du kannst den Inhalt des ersten outputtes auch in eine Variable schrieben und dann als Quelle für das zweite nehmen. Quasi zweimal parsen.
So mache ich das.
mfg pktm
http://www.intergastro-service.de (mein erstes CMS :) )
esskar
 2005-01-28 23:11
#4248 #4248
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
ich mach das so

header.tpl
Code: (dl )
1
2
3
4
<html>
<head>
</head>
<body>


footer.tpl
Code: (dl )
1
2
</body>
</html>


und wenn ich jetzt z.b. eine seite habe, sieht die dann so aus

Code: (dl )
1
2
3
4
5
<TMPL_INCLUDE NAME="header.tpl">

Ich bin eine Seite.

<TMPL_INCLUDE NAME="footer.tpl">
daywalka
 2005-01-28 23:17
#4249 #4249
User since
2004-02-03
15 Artikel
BenutzerIn
[default_avatar]
besten dank ptm, auf die idee, den output zweimal hintereinander auszugeben bin ich gar nich gekommen. ich nahm merkwürdigerweise an, dass das script nach dem ersten output nichts danach mehr zulässt. tja wie einfach es doch sein kann *gg*.

vielen dank nochmal, daywalka\n\n

<!--EDIT|daywalka|1106947073-->
daywalka
 2005-01-28 23:22
#4250 #4250
User since
2004-02-03
15 Artikel
BenutzerIn
[default_avatar]
@esskar
in meinem fall wäre jedoch header.tpl dynamisch, ich bin also immer bei 2 templates, die ich verarbeiten muss. aber die lösung kam ja schon, schnell und einfach. :)
renee
 2005-01-29 01:13
#4251 #4251
User since
2003-08-04
14371 Artikel
ModeratorIn
[Homepage] [default_avatar]
Zu HTML::Template : http://perl.renee-baecker.de/HTML_Template.pdf
OTRS-Erweiterungen (http://feature-addons.de/)
Frankfurt Perlmongers (http://frankfurt.pm/)
--

Unterlagen OTRS-Workshop 2012: http://otrs.perl-services.de/workshop.html
Perl-Entwicklung: http://perl-services.de/
esskar
 2005-01-29 01:29
#4252 #4252
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
@daywalka: TMPL_IF und TMPL_ELSE kennst du?
daywalka
 2005-01-29 01:57
#4253 #4253
User since
2004-02-03
15 Artikel
BenutzerIn
[default_avatar]
ok, es hätte mir doch geholfen. ;)
Ich wusste nich, dass die Variablen in einem inkludierten Template auch ersetzt werden können.
<< >> 8 Einträge, 1 Seite



View all threads created 2005-01-28 22:58.