wNavigation::createNavigationHTMLFromXML

Generiert eine Navigation auf Basis einer XML-Zeichenkette

Funktionsaufruf

String createNavigationHTMLFromXML(String navigationStr, String template, String mode, String navId, Array options = array())

Parameter

navigationStr
XML-Zeichenkette der Navigation
template
Pfad zum Navigationstemplate
mode
Modus der Navigationsdarstellung
navId
Navigations-ID des aktuellen Navigationspunkt
options
Zusätzliche Einstellungen
deep
Gibt an, wie viele Level berücksichtigt werden sollen
root
Falls eine Navigation-ID angegeben ist, werden nur die Unterpunkte des angegebenen Navigationspunktes als Navigation berücksichtigt
keepRoot
Falls das Wurzelelement, welches über das Attribut root angegeben wurde, neben dessen Unterpunkten auch erhalten bleiben soll
rootOnly
Falls das Wurzelelement, welches über das Attribut root angegeben wurde, nicht existiert, wird ein leerer Baum zurückgegeben
checkOnline [|off]
Verhindert, das der Online-Status geprüft wird
checkPersonalization [|off]
Verhindert, das die Personalisierung geprüft wird
filterEmptyTag
Legt fest, ob die Navigation angezeigt wird, falls nur ein leeres Wurzelelement generiert wurde
expires
Gültigkeit in Sekunden, bevor die Navigation neu generiert wird
expiresUser
Gültigkeit in Sekunden, bevor die Navigation neu generiert wird, falls der Benutzer eingeloggt ist
navidExpires
Navigations-ID, die als Basis für den Cache genutzt wird. Falls nichts definiert ist, wird immer die Standard Navigations-ID genutzt. Ändert sich die Navigation z.B. nicht abhängig vom ausgewählten Navigationspunkt, kann ein konstanter Wert angegeben werden.
subdirCache
Unterverzeichnis innerhalb des Cache-Verzeichnisses, in das die über expires bzw. expiresUser generierten Cache-Dateien gespeichert werden
removeIndexPhp
Entfernt index.php aus den Navigationspfaden
navidPre
Wird die Navigation mehrfach eingebunden, kann sie z.B. über '2_' ergänzt werden, um ID-Konflikte zu vermeiden.
project
Projektpfad für den Cache, falls die Funktion über ein Skript statt innerhalb eines Inhaltsprojektes aufgerufen wird.

Beispiel: Generiert eine Navigation auf Basis einer XML-Zeichenkette

Quelltext

<?php

require_once($_SERVER["DOCUMENT_ROOT"]."/weblication/grid.php");
$navigationStr = '<wNavigation version="5.0">
<navPoint id="123456789010" text="Unternehmen" link="/de/unternehmen/" title="" target="_self" previewLink="" content2Link="" content3Link="inherit" content4Link="inherit" content5Link="inherit" editGroup="">
<navPoint id="123456789011" text="Anfahrt" link="/de/anfahrt/" title="" content2Link="inherit" content3Link="inherit" content4Link="inherit" content5Link="inherit" target="_self" editGroup=""/>
</navPoint>
</wNavigation>
'
;
$template = '/default-wGlobal/wGlobal/layout/templates/navigations/sitemap.wNavigation.php';
$mode = "sitemap";
$navId = (wRequest::getParameterSecure('navid')) ? wRequest::getParameterSecure('navid') : NULL; // z.B. ?navid=1248040054153
$navOptions['deep'] = 2;
$navOptions['expires'] = 10;
$navOptions['expiresUser'] = 604800;
$navOptions['project'] = '/de';

print
wNavigation::createNavigationHTMLFromXML($navigationStr, $template, $mode, $navId, array('deep' => $navOptions['deep'], 'expires' => $navOptions['expires'], 'expiresUser' => $navOptions['expiresUser'], 'project' => $navOptions['project']));

?>

Hinweis
Beim Einsatz von Framework-Funktionen in eigenen Skripten beachten Sie bitte den Artikel "So verwenden Sie das PHP-Framework in eigenen Scripten".
Wenn Sie eine Funktion innerhalb einer Weblication® Seite z.B. über das PHP-Quelltext Element oder in einem XSL-Template über wsl:php einbinden, muss das Framework über die grid.php nicht mehr referenziert werden.