Text::Template is a nice and fast module if you need to create a few simple dynamic webpages. I recently used it for a project where I needed easy installation, and since Text::Template didn't require any other Perl modules than what is in the core, it came in very handy.
The documentation gives a simple example on how to include sub-templates. In my improved example, by using a closure, you can very comfortably inherit the parameters set for your current template in the templates you include.
I use this function to fill in templates:
sub _fill_in {
my ($template, %params) = @_;
$params{include} = sub {
_fill_in(shift, %params, @_);
return '';
};
my $template = Text::Template->new(
SOURCE => catfile($templates_path, "$template.tmpl"));
$template->fill_in(HASH => \%params, OUTPUT => \*STDOUT);
}
Then, a template might look like this:
{include('_header', title => 'Page title')}
<p>Some text...</P>
{include('_footer')}
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.