Dateien können auch abhängig von Feldwerten in automatisch generierte Inhaltsübersichten aufgenommen oder formatiert werden. Der folgende Code prüft, ob das kundenspezifische Feld ShowInTocList
einen Wert hat.
<npsobj name="ShowInTocList" condition="isNotEmpty"> ... </npsobj>
Mit condition="isEmpty"
prüfen Sie, ob ein Feldwert leer ist. Wenn Sie jedoch den Wert eines Feldes wie beispielsweise title
mit einer Zeichenkette vergleichen möchten, so verwenden Sie Code nach folgendem Muster:
<npsobj name1="title" value2="Ein Datei-Titel" condition="isEqual"> ... </npsobj>
Stimmt der Wert des Feldes exakt mit der angegebenen Zeichenkette überein, so arbeitet der Content Management Server den Code vor </npsobj>
ab. Umgekehrt können Sie mit condition="isNotEqual"
auf Nicht-Übereinstimmung prüfen.
Ob der Wert eines Feldes mit einer bestimmten Zeichenkette beginnt oder endet, können Sie mit hasPrefix
bzw. hasSuffix
testen. Im folgenden Beispiel wird geprüft, ob der Titel der Datei mit den Zeichen „Datenblatt" beginnt:
<npsobj name1="title" value2="Datenblatt" condition="hasPrefix"> ... </npsobj>
Datumsfelder abfragen
Wenn Sie Datumsfelder in konditionalen NPSOBJ-Anweisungen abfragen, so sollten Sie berücksichtigen, dass der Content Management Server den Vergleich auf die kanonische Form des Datums anwendet. Bei diesem Format ist ein Datum als 14-stellige Zeichenkette repräsentiert, die von links beginnend aus der Jahreszahl, dem Monat, dem Tag, der Stunde und der Sekunde zusammengesetzt ist, wobei bis auf die vierstellige Jahreszahl alle Angaben zweistellig sind. Beispielsweise wird das Datum 18.12.2010
als 20101218000000
gespeichert.
Verwenden Sie als Vergleichsoperator hasPrefix
, um nur die relevanten Zeichen des gespeicherten Datums mit einer Zeichenkette zu vergleichen. Bitte beachten Sie, dass die Parameter bei den Vergleichsoperationen hasPrefix
und hasSuffix
nicht kommutativ sind: der Index, mit dem name
und value
jeweils versehen ist, bestimmt die Position des Parameters. Der Index ist obligatorisch.
Im folgenden Beispiel werden die Dateien ermittelt, die zuletzt am 08.09.2010 geändert wurden:
<npsobj condition="hasPrefix" name1="lastChanged" value2="20100908">...</npsobj>
Alle Dateien, die zuletzt im Mai 2011 geändert wurden, erhält man mit folgendem Code.
<npsobj condition="hasPrefix" name1="lastChanged" value2="201105">...</npsobj>
Bitte beachten Sie, dass jeder Datumswert im Content Management Server auf die Zeitzone GMT
bezogen ist. Möchten Sie also prüfen, ob eine Datei zeitlich gültig ist, so müssen Sie als value2
den in GMT umgerechneten Wert des Vergleichszeitpunkts verwenden.