Thread HTML::Template und Textile's (8 answers)
Opened by Froschpopo at 2007-10-07 21:17

Froschpopo
 2007-10-08 15:21
#100493 #100493
User since
2003-08-15
2653 Artikel
BenutzerIn
[default_avatar]
Also ich mach das jetzt so:
Code: (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
my $str = "Hier die News: <TMPL_INCLUDE NAME=news.html>";

&template($dbh, \%params, $str);

sub template {
my ($dbh, $paramsref, $data) = @_;

my $tmpl = HTML::Template->new(filename => "/srv/www/projektgemeinschaft/main.html");

my %params = ();

$params{$_} = $paramsref->{$_} for keys %{$paramsref};

my $textile = new Text::Textile;
$data = $textile->process($data);

$params{'CONTENT'} = $data;

$tmpl->param(\%params);
print $tmpl->output();
}

das Problem lässt sich ja anhand des oberen Beispiels schon sehr leicht erahnen:
HTML::Template parst nur die Datei, nicht aber die in $data enthaltenen Template-Tags.
Im obigen Beispiel wäre ein solcher Tag das INCLUDE aus $str, das ignoriert wird weil es nicht im html-File liegt.
Das scheint auch nicht an Textile zu liegen.

View full thread HTML::Template und Textile's