In den letzten Monaten kam es immer wieder vor, dass mich Entwickler anschreiben und fragen wie baut man in eZ Publish eine gute Navigationsstrutkur auf? Die Grundinstallation bietet nämlich leider nur eine Klasse für die Verwaltung der internen und öffentlichen Struktur. Mit diesem Artikel zeige ich euch nun wie man es besser macht.

 

 


Problemstellung:

In der Inhaltsstruktur will  man einen Order anlegen, der aber über die Webseite nicht erreichbar sein soll. Was hat der Entwickler für Möglichkeiten?
Es stehen dabei mehrere Lösungen zur Wahl:

  1. Er definiert für „Anonymous Users“ die Rechte, dass diese die jeweiligen Order nicht sehen dürfen.
  2. Oder er versteckt den Ordner, was aber wieder zu Problemen mit dem Fetch Befehl führen kann.
  3. Eine andere Möglichkeit wäre, eine eigene Navigationsklasse für die Webseite erstellen. (Empfohlene Lösung)

Den letztern Punkt möchte ich euch heute näher bringen. In wenigen Minuten habt ihr das Problem aus der Welt geschafft, versprochen. 🙂

Was ist zu tun?

1. Neue Klasse „Navigation“ erstellen

Erstelle unter Setup eine neue Klasse, die du zum Beispiel „Navigation“ nennst.

2. Backend – Inhaltsstruktur

Wenn du nun einen Navigationspunkt in der Inhaltsstruktur erstellst, wirst du schnell sehen, dass er nicht angezeigt wird. Mit einem kurzem INI Eintrag ist dies auch erledigt. Erstelle in deiner Erweiterung unter settings „contentstructuremenu.ini.append.php“ mit:

[TreeMenu]
ShowClasses[]=navigation

 

3. eZ Menü mit der neuen Navigationsklasse

Damit eZ Publish eure neue Klasse als Menü akzeptiert muss man unter settings noch eine Datei erstellen: „menu.ini.append.php“.

[MenuContentSettings]
TopIdentifierList[]
TopIdentifierList[]=navigation

[MenuSettings]
HideLeftMenuClasses[]=folder

 

Was macht der Eintrag?
Die Klasse „Navigation“ wird nun als Menü verwendet und die Klasse „folder“ wird nicht angezeigt.

Damit sind wir auch schon fertig. Nun könnt ihr noch ein paar Feinheiten erledigen.

4. Noch ein bisschen Aufräumen

Icons
Neue Datei erstellen unter settings „icon.ini.append.php“

[ClassIcons]ClassMap
[navigation]=filesystems/folder.png

 

Damit bekommt die Klasse auch ein schönes Icon. Man könnte natürlich auch ein eigenes definieren. Dies muss unter share/ abgelegt werden.

„Folder“ Klasse
Alle Felder bis auf Name aus der Klasse entfernen, da diese für interne Verwaltung nicht benötigt werden.

https://blog.silversolutions.de/wp-content/uploads/2018/12/ez_dummy.pnghttps://blog.silversolutions.de/wp-content/uploads/2018/12/ez_dummy-150x150.pngDavid HohlB2B.technologieCMS,How-to,Tipps & TricksIn den letzten Monaten kam es immer wieder vor, dass mich Entwickler anschreiben und fragen wie baut man in eZ Publish eine gute Navigationsstrutkur auf? Die Grundinstallation bietet nämlich leider nur eine Klasse für die Verwaltung der internen und öffentlichen Struktur. Mit diesem Artikel zeige ich euch nun wie...Die e-Commerce B2B Experten bloggen über Händler-Shops, ERP, PIM und das integrierte CMS eZ Publish