HTML-Hauptinhalt und andere Feldwerte

Auf den Hauptinhalt der exportierten Datei greifen Sie wie auf jedes andere Feld zu. Feldwerte werden mit einem NPSOBJ-Tag nach folgendem Muster ausgelesen:

<npsobj name="attribute-name" insertvalue="var"/>

Dabei ist es unerheblich, ob Sie auf Dateifelder (wie name), vorgegebene Versionsfelder (wie lastChanged oder title) oder kundenspezifische Versionsfelder zugreifen.

Den Hauptinhalt fügen Sie – üblicherweise in einem vom Basislayout referenzierten Layout – mittels folgender Anweisung in die resultierende Ausgabedatei ein:

<body>
  <npsobj name="body" insertvalue="var"/>
</body>

Bitte beachten Sie, dass es nicht möglich ist, den Wert eines HTML-Tag-Attributs mit einer NPSOBJ-Anweisung, also beispielsweise folgendermaßen zu setzen:

<!-- Dies ist nicht zulässig-->
<A href="/" title="<npsobj insertvalue="var" name="myAttribute"/>">
Click here</A>

Verwenden Sie zu diesem Zweck bitte eine @-Referenz oder einen Formatter, mit dem das vollständige HTML-Element erzeugt wird (siehe npsobj_insertvalue_var).

Bitte beachten Sie auch, dass NPSOBJ-Anweisungen nur ausgewertet werden, wenn sie sich im Hauptinhalt von Layouts, Dokumenten oder Ordnern befinden und diese Dateien den MIME-Typ text/html haben.

Ferner dürfen die exportierten Seiten (d.h. die Layouts und die darin eingefügten Feldwerte), die über den Portal Manager ausgeliefert werden, keinen Velocity-Code enthalten, denn der Portal Manager wertet diesen Code aus, wodurch die Seite zerstört werden kann oder gar nicht angezeigt wird. Wenn Sie Velocity-Code in eine Seite einfügen möchten, so ersetzen Sie alle #-Zeichen durch &#x23; und alle $-Zeichen durch &#x24;.

Die folgende Tabelle enthält eine Auswahl der verfügbaren Datei- und Versionsfelder. Der volle Sprachumfang ist im Syntax-Teil beschrieben. Bitte beachten Sie, dass die Schreibweise eines Feldnamens in einem NPSOBJ-Tag exakt der tatsächlichen Schreibweise des Feldnamens entsprechen muss – Groß- und Kleinschreibung wird also berücksichtigt.

FeldnameFeldwert
body Der Hauptinhalt der freigegebenen Version der exportierten Datei.
contentType Die Dateiendung.
id Die Datei-ID.
name Der Name der Datei.
path Der Pfad der aktuellen Datei.
prefixPath Wenn die aktuelle Datei ein Ordner ist, wird der Pfad, gefolgt von dem Zeichen „/" geliefert, andernfalls wird der Pfad geliefert.
title Titel der aktuellen Datei.
visibleName Wenn die aktuelle Datei ein Dokument ist, wird der Dateiname, gefolgt von der Dateiendung geliefert, ist es ein Ordner, wird nur der Dateiname geliefert.
visiblePath Bei Dokumenten der komplette Pfad einschließlich Dateiname, mit dem die Datei exportiert wird; bei Ordnern, der komplette Pfad einschließlich Dateiname, gefolgt von "/index", gefolgt von der Dateiendung des Ordners.
lastChanged Das Datum der letzten Änderung der aktuellen Datei. Änderungen im Inhalt der Datei werden hierbei nicht berücksichtigt. Beim Export einer freigegebenen Datei ist die letzte Änderung die Freigabe.
validFrom Das Datum, ab dem der Inhalt der Datei gültig ist. Dieses Feld wird bei Layouts ignoriert. Der Wert von validUntil muss leer oder größer als der Wert von validFrom sein.
validUntil Das Datum, bis zu dem der Inhalt der Datei gültig ist. Wenn dieser Wert leer ist, ist das Dokument unbegrenzt gültig. Dieses Feld wird bei Layouts ignoriert.

Das Format, in dem Datumswerte beim Export und in der Vorschau geliefert werden, wird normalerweise durch den ersten Wert im Systemkonfigurationseintrag export.validDateOutputFormats bestimmt. Mit dem zusätzlichen Tag-Attribut format="formatName" im NPSOBJ-Tag können Sie jedoch die Formatierung des Datums beeinflussen, indem Sie als formatName einen der anderen Formatnamen angeben, die im genannten Systemkonfigurationseintrag definiert sind.

Bei Mehrfachauswahl-Feldern, deren Wert aus mehreren Elementen besteht, muss mit separator="string" eine Zeichenkette als Trenner im NPSOBJ-Tag angegeben werden. Der Content Management Server gibt den Trenner zwischen den einzelnen Elementen des Feldwerts aus. Als Separator können Sie auch eine leere Zeichenkette angeben.

Das folgende Beispiel zeigt, wie der Titel eines Dokuments (festes Versionsfeld title) und eine Schlüsselwörterliste (kundenspezifisches Versionsfeld keywords ) als HTML-meta-Elemente verwendet sowie das Datum der letzten Änderung (festes Versionsfeld lastChanged) und der Wert des kundenspezifischen Feldes autor automatisch am Ende der erzeugten HTML-Seite eingefügt werden.

<head>
  <title><npsobj name="title" insertvalue="var"/></title>
  <npsobj name="keywords" insertvalue="meta" separator=","/>
</head>
<body>
  <npsobj name="body" insertvalue="var"/>
  <hr>
  <font SIZE="-2">
  Zuletzt geändert am
  <npsobj name="lastChanged" insertvalue="var">
  </npsobj>.
  Autor: <npsobj name="autor" insertvalue="var"/>
  </font>
</body>

Es ist möglich, HTML-Text nur unter bestimmten Bedingungen zu generieren, beispielsweise nur beim Export von Ordnern oder abhängig vom Wert eines Feldes.