Attribute (SP-Tag): Unterschied zwischen den Versionen

Aus SiteparkWiki
Zur Navigation springen Zur Suche springen
 
(Eine dazwischenliegende Version von einem anderen Benutzer wird nicht angezeigt)
Zeile 23: Zeile 23:
 
</source>
 
</source>
 
Hier wird bei Ausführung des Tags die Variable '''sp_headline''' aus dem aktuellen Artikel gelesen und verwendet. Auch vorher mit <code><sp:set/></code> definierte Variablen lassen sich so auswerten. Damit ist z.B. die Programmierung von Schleifen möglich.
 
Hier wird bei Ausführung des Tags die Variable '''sp_headline''' aus dem aktuellen Artikel gelesen und verwendet. Auch vorher mit <code><sp:set/></code> 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.
  
 
<div class="note">
 
<div class="note">
Zeile 35: Zeile 36:
 
| <code>name</code>
 
| <code>name</code>
 
| [[Attribute]]
 
| [[Attribute]]
| Ja
+
| Ja, oder <code>text</code>, <code>dynamics</code>, <code>object</code>
 +
| None
 +
| 1 ''depricated ab Version 2.1.0''
 +
|-
 +
| <code>text</code>
 +
| [[String]]
 +
| Ja, oder <code>name</code>, <code>dynamics</code>, <code>object</code>
 +
| None
 +
| 1
 +
|-
 +
| <code>object</code>
 +
| [[Attribute]]
 +
| Ja, oder <code>name</code>, <code>dynamics</code>, <code>text</code>
 +
| None
 +
| 1
 +
|-
 +
| <code>dynamics</code>
 +
| [[Map]]
 +
| Ja, oder <code>name</code>, <code>oject</code>, <code>text</code>
 
| None
 
| None
 
| 1
 
| 1
Zeile 41: Zeile 60:
  
 
;<code>name</code>
 
;<code>name</code>
:Name des Attributes, das evaluiert werden soll.
+
:Name des Attributes, das als Text evaluiert werden soll.
:Bei der Evaluierung wird der Inhalt dieser Variablen überschrieben.
+
 
 +
;<code>text</code>
 +
:Text der evaluiert werden soll. Dies ist funktional identisch mit <code>name</code>
 +
 
 +
;<code>object</code>
 +
:Name des Attributes, das als Objekt evaluiert werden soll.
 +
 
 +
;<code>dynamics</code>
 +
:Evaluierung aller dynamischen Attribute.
  
 
==Beispiele==
 
==Beispiele==

Aktuelle Version vom 26. Februar 2010, 15:35 Uhr

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