AllgemeinHinweiseBeispieleCustom RenderTagGilt fürSiehe auch
Im Template Rendering kann man Kontrollstrukturen verwenden. Für eine Kontrollstruktur if kann man eine alternative Anweisung else definieren. Diese Anweisung wird dann ausgeführt, wenn die Bedingung der Kontrollstruktur if nicht zutrifft. Die alternative Anweisung else formuliert man im innerhalb des RenderTag if mit dem zweiten Tag query, welches zusätzlich das Attribut type mit dem fixen Wert else bekommt.
if > query wird nur ausgeführt, wenn die Bedingung erfüllt ist.query mit type="else" wird dann ausgeführt, wenn die Bedingung der darüberliegenden if > query nicht zutrifft.if > query formuliert.if > query hat die folgenden Attribute:
if > query als else gibt es das folgende Attribute:
if > query verwendet werden:
Int32/Int verwendet werden.
Quelle: OpenText Web Site Management Server Online-Hilfe
Im folgenden Beispiel wird der RenderTag navigation:nextlevel aufgerufen, wenn der aktuelle Index untergeordnete Index-Objekte (Seiten) hat. Andernfalls wird der Text Keine untergeordneten Seiten ausgegeben.
<reddot:cms> <if> <query valuea="Context:CurrentIndex.HasChildren()" operator="==" valueb="Bool:True"> <htmltext> <navigation:nextlevel> </htmltext> </query> <query type="else"> <htmltext> No child pages </htmltext> </query> </if> </reddot:cms>
Im nun folgenden Beispiel werden zwei Objekte miteinander verglichen:
<reddot:cms> <if> <query valuea="Context:CurrentPage.Id" operator="==" valueb="Context:CurrentMasterPage.Id"> <htmltext>Gleiche Seite</htmltext> </query> <query type="else"> <htmltext>Andere Seite</htmltext> </query> </if> </reddot:cms>
Es gibt auch die Möglichkeit, dass man den Tag query mehrfach verwendet, innerhalb von if:
<reddot:cms> <if> <query valuea="Context:CurrentPage.Id" operator="==" valueb="Context:CurrentMasterPage.Id"> <htmltext>Gleiche Seite</htmltext> </query> <query valuea="Context:CurrentPage.Headline" operator="==" valueb="Context:CurrentMasterPage.Headline"> <htmltext>Gleiche Überschrift</htmltext> </query> <query type="else"> <htmltext>Andere Seite oder Überschrift</htmltext> </query> </if> </reddot:cms>
Jedoch sollte es nur einen Tag query mit dem Attribut type und dem Wert else geben.
Wichtig: Bei dieser Art der Verwendung ist, dass man ganz genau weiß welche Kombinationen möglich sind. Damit man sich über das Verhalten und die möglichen Ergebnisse nicht wundert.
Es gibt auch die Möglichkeit eigene s.g. Custom RenderTags mit .NET Framework zu erstellen und dann beim Template Rendering aufzurufen. Dazu findet man im OpenText™ Developer Network Beispiel Code und eine ausführliche Anleitung.
... ist Senior Site Reliability Engineer bei der Vodafone GmbH in Düsseldorf. Seit dem Jahr 2007 betreut er zusammen mit seinen Kollegen die OpenText- (vormals RedDot-) Plattform Web Site Management für die deutsche Konzernzentrale.
Er entwickelt Erweiterungen in Form von Plug-Ins und PowerShell Skripten. Seit den Anfängen in 2001 (RedDot CMS 4.0) kennt er sich speziell mit der Arbeitweise und den Funktionen des Management Server aus.