Syntax
npsobj_insertvalue_dynamiclink::=
<npsobj insertvalue = "dynamiclink"
destination = "destination"
[ formatter = "formatter_procedure_alias" ]
{other_attribute} />
other_attribute::= string = "string"
Aufgabe
Das Element dient dazu, include-Anweisungen in der Syntax
beliebiger Skriptsprachen (PHP, JSP, SSI) zu erzeugen und die Referenz in
die automatische
Linkverwaltung
aufzunehmen. Das Element sollte aus Performance-Gründen nur zu seinem
eigentlichen Zweck – die serverseitige Inklusion von Dateien
– und nicht zur Berechnung relativer Pfade verwendet werden. Für
letzteres ist ein Formatter in einer
insertvalue-var-Anweisung oder
eine systemexecute-Anweisung
ausreichend. Damit dynamische Links in der Vorschau funktionieren, muss
die Vorschau
dynamisch sein.
Der erzeugte Link hat den Typ dynamic.
Die Attribute haben die folgende Bedeutung:
Wenn
formatterangegeben ist, wird die Tcl-Prozedur ausgeführt, die im Systemkonfigurationseintragexport.tclDynamicLinkFormatterCommandsden Aliasformatter_procedure_aliashat. Dieser Prozedur werden die unten aufgeführten Argumente übergeben. Der Rückgabewert dieser Prozedur wird anstelle der gesamten NPSOBJ-Anweisung in die exportierte Seite eingefügt. Wennformatternicht angegeben ist, so wird anstelle der Anweisungdestinationeingefügt.Mit
destinationwird der Pfad oder die URL angegeben, die die Formatierungsprozedur verarbeiten soll.destinationkann ein relativer oder absoluter Pfad oder eine URL sein. Pfade werden als interne, URLs als externe Links in die Linkverwaltung übernommen.Als
other_attributekönnen beliebige Attribute angegeben werden.
Da die referenzierte Datei von beliebigen Dateien in der
Live-Server-Verzeichnishierarchie inkludiert werden und auch selbst
wieder Links enthalten kann, lassen sich der Content Manager und die
Template Engine mit dem Systemkonfigurationseintrag
export.exportAbsolutePaths
so einstellen, dass interne Pfade und URLs in der referenzierten Datei
absolut exportiert werden. Ist dieser Wert auf YES gesetzt,
werden die im Eintrag export konfigurierbaren Präfixe für
absolute Pfade und URLs verwendet.
Der Formatierungsprozedur werden die folgenden Argumente in der angegebenen Reihenfolge übergeben:
- Die URL des Ziels, d. h. der CMS-Dateipfad, gegebenenfalls mit URL-Präfix;
- der Dateisystem-Pfad des Ziels, gegebenenfalls mit Dateisystem-Präfix;
- die ID der exportierten Datei;
- eine Liste mit allen
other_attribute-Attributen und ihren Werten als Name-Wert-Paare.
Beispiel
Die folgende Anweisung erzeugt in der exportierten Datei eine PHP-include-Anweisung, die die Datei mit dem Pfad ../some/path inkludiert. Es wird ein Link auf die referenzierte Datei erzeugt, der in die Linkverwaltung aufgenommen wird. Wird – bei Referenzen auf CMS-Dateien – die referenzierte Datei verschoben, so werden der Link und die NPSOBJ-Anweisung automatisch angepasst.
<npsobj insertvalue="dynamicLink" destination="../some/path" formatter="phpInclude" />
Die Anweisung gibt die folgende PHP-Anweisung zurück:
<? include("/from/root/to/some/path"); ?>