Attribute (SP-Tag)

Aus SiteparkWiki
Version vom 26. Februar 2010, 15:35 Uhr von Hying (Diskussion | Beiträge) (→‎Attribute)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Name

<sp:attribute> - Optionaler Tag. Evaluiert bei Custom-Tags die angegeben Parameter in dem aktuellen Element.

Syntax

<sp:attribute name="custom_tag_attribute"/>

Beschreibung

Bei Custom-Tags werden in den ersten Zeilen die notwendigen oder optionalen Parameter definiert. Diese stehen anschließend im Tag unter den Namen des Attributes zu Verfügung.

<mytaglib:mytag myattribute="ein test"/>

Innerhalb des Tags kann nun mit

<sp:print name="myattribute"/>

der Wert ein test ausgegeben werden.

Soll nun aber auch die Angabe von Variablen möglich sein, so müssen diese im Custom-Tag zunächst evaluiert werden. Als Basis für die Evaluierung dient das aktuelle Element. Das entspricht dem Verhalten des umgebenden Templates. Diese Evaluierung kann über den Tag <sp:attibute/> gesteuert werden. So ist die Übergabe von einer Variablen wie folgt möglich.

<mytaglib:mytag myattribute="${sp_headline}"/>

Hier wird bei Ausführung des Tags die Variable sp_headline aus dem aktuellen Artikel gelesen und verwendet. Auch vorher mit <sp:set/> definierte Variablen lassen sich so auswerten. Damit ist z.B. die Programmierung von Schleifen möglich. Bei der Evaluierung wird der Inhalt der Variable stets überschrieben.

Hinweis: Die Verwendung von <sp:attribute/> sollte i.d.R nur mit Attributen verwendet werden, deren Angabe verpflichtend ist. Mögliche unerwartete Randeffekte könnten sonst die Folge sein (z.B. ein optionales Attribut name würde bei Evaluierung ohne Übergabe den Namen des aktuellen Elementes zurückgeben).

Attribute

Name Type Required Default ab IES Version
name Attribute Ja, oder text, dynamics, object None 1 depricated ab Version 2.1.0
text String Ja, oder name, dynamics, object None 1
object Attribute Ja, oder name, dynamics, text None 1
dynamics Map Ja, oder name, oject, text None 1
name
Name des Attributes, das als Text evaluiert werden soll.
text
Text der evaluiert werden soll. Dies ist funktional identisch mit name
object
Name des Attributes, das als Objekt evaluiert werden soll.
dynamics
Evaluierung aller dynamischen Attribute.

Beispiele

siehe Custom-Tags