Manual

2.7. tal:attributes

Atrybut zmienia wartość atrybutu znacznika.

<a href="http://www.foo.com" title="some foo link"
   tal:attributes="href somelink/href; title somelink/title" 
  tal:content="somelink/text"
>sample link</a>

Z definicją atrybutów :

$somelink->href = "http://www.google.com";
$somelink->title = "google search engine";
$somelink->text = "the google search engine";

Spowoduje wyświetlenie :

<a href="http://www.google.com" 
title="google search engine">the google search engine</a>

Bardziej skomplikowany przykład z tal:repeat powodujący naprzemienne kolorowanie wierszy tabeli :

<tr tal:repeat="ranking playerRankings"
    tal:attribute="class php: repeat.ranking.odd ? 'odd' : false">
    ...
</tr>

Modyfikator php: z powyższego przykładu będzie opisany później, jeśli linia będzie parzysta wiersz tr otrzyma atrybut class z wartością odd, w przeciwnym wypadku (jeśli linia będzie nieparzysta) nie otrzyma atrybutu klasy.

Składnia "warunek ? then : else" jest standardowym wygodnym wyrażeniem PHP.

Lepszym sposobem otrzymania tego samego wyniku jest użycie własnego modyfikatora, który może być użyty w następujący sposób :

<tr tal:repeat="ranking playerRankings"
    tal:attribute="class css-odd:repeat/ranking/odd">
  ...
</tr>

Modyfikator zwróci odd jeśli repeat/ranking/odd będzie miało wartość true, w przeciwnym wypadku zwróci false.