HTML::Template
HTML::Template ist ein Perl-Modul, das bei WebGUI in Verbindung mit Vorlagen oder Templates verwendet wird.
Es ist hiermit möglich mit einer Beschreibung in einem erweiterten HTML-Syntax variabele Inhalte zu erstellen. HTML-Template bekommt Werte von Variabelen vom Server und setzt diese anstelle des jeweiligen Variabelen-Namen in die Vorlage ein, bevor diese zum Client (Browser) geschickt wird.
Beispiel-Vorlage mit Variabele "title":
<h3><tmpl_var title></h3>
Der Server sendet title="Testseite" zur HTML::Template-Vorlage.
HTML::Template macht dann daraus:
<h3>Testseite</h3>
HTML::Template bietet eine einfache Template-Sprache an, womit Konditionen abgefragt werden können. Elemente hieraus sind:
- <tmpl_if> ... </tmpl_if>
- <tmpl_if> ... <tmpl_else> ... </tmpl_if>
- <tmpl_loop> ... </tmpl_loop>
- <tmpl_unless> ... </tmpl_unless>
In der WebGUI-Objekt-Dokumentation wird pro Objekt wie Seiten-Layout, Artikel, Navigation etc. beschrieben welche Variabelen jeweils ausgewertet werden können.
Beispiel einer Seitenlayout-Vorlage
<div><a name="id<tmpl_var assetId>" id="id<tmpl_var assetId>"></a></div>
<tmpl_if showAdmin>
<p><tmpl_var controls></p>
</tmpl_if>
<tmpl_if displayTitle>
<h1><tmpl_var title></h1>
</tmpl_if>
<tmpl_if description>
<tmpl_var description>
</tmpl_if>
<div class="layoutColumnPadding">
<tmpl_if showAdmin>
<table border="0" id="position1" class="content"><tbody>
</tmpl_if>
<tmpl_loop position1_loop>
<tmpl_if showAdmin>
<tr id="td<tmpl_var id>"><td><div id="td<tmpl_var id>_div" class="dragable<tmpl_if isUncommitted> uncommitted-asset</tmpl_if>">
</tmpl_if>
<div class="content"><tmpl_var dragger.icon>
<tmpl_var content>
</div>
<tmpl_if showAdmin>
</div></td></tr>
</tmpl_if>
</tmpl_loop>
<tmpl_if showAdmin>
</tbody></table>
</tmpl_if>
</div>
<tmpl_if showAdmin>
<table><tr id="blank" class="hidden"><td><div><div class="empty"> </div></div></td></tr></table>
<tmpl_var dragger.init>
</tmpl_if>
Schlüsselworte: template vorlage
