Ein Beispieltemplate

[% META
  Title    = 'Syntaktische Einordnung'
  Previous = 'tt_def'
  Next     = 'get_into'
%]
<div class="content">
<dl>
  <dt>TT-eigenes Markup, also nicht "wie HTML"</dt>
  <dd>... wenig Ärger mit HTML-validierenden Editoren.</dd>

  <dt>TT-eigene Template-Sprache, also nicht Perl</dt>
  <dd>...auch Leute ohne Perl-Kenntnisse können Templates 
    bearbeiten. Sollen wir uns mal den 
    [% WRAPPER a href="tt_properties_example" %]Code für diese
    Seite[% END %] ansehen?</dd>

  <dt>Perl-Code kann eingebunden werden</dt>
  <dd>...mit diversen Schmerzgrenzen bis hin zum "nackten" 
    Perl-Code im Template.</dd>
</dl>
</div>
[% remarks = BLOCK %]
<p class="remark">Dass das Template Toolkit eine eigene Markup-Syntax
und vor allem eine eigene Template-Sprache verwendet, wird von Fans
anderer Template-Systeme gelegentlich kritisiert.
Ich sehe darin <em>charakteristische
Eigenschaften</em>, die oft auch Vorteile sind.</p>
<p class="remark">Mit TT kann man zum Beispiel ein recht einfaches
"Autorensystem" bauen, bei dem die Autoren von Webseiten wenig TT- und
kein Perl-Knowhow brauchen.  Auch wer kein Perl kann, hat vielleicht
zu vielen Themen etwas interessantes zu sagen!
</p>
[% END %]
Weiter zu 'Also nun mitten hinein!'
Zurück zu 'Syntaktische Einordnung'
Start
Inhaltsverzeichnis

In diesem Stil sind die Seiten des Vortrags (ohne die Bemerkungen) aufgebaut: Ein einfacher Header zur Steuerung der Navigation, dann ein HTML-Abschnitt.

Die TT-Besonderheiten sind:

  1. Ein META-Block für (na, was wohl) Metadaten
  2. Ein WRAPPER anstelle eines "normalen" A-Elements: Damit wird erreicht, dass der Link zum Codebeispiel auch rechts in die Navigation kommt.
  3. Die Bemerkungen als BLOCK - die waren beim Vortrag noch nicht dabei!
  4. Nur Geduld, das wird alles noch erklärt....


Template-Verarbeitung mit dem Template Toolkit
Harald Jörg, Munich Perl Mongers, Februar 2003