Plone: Navigations-Root ändern

Plone bietet die Möglichkeit, für die Startseite der Instanz eine beliebige Inhaltsseite (Page) als Startseite einzustellen. Es ist allerdings nicht möglich, ein Folder-Objekt und dessen Ansicht als Startseite einzustellen.

Bei der Entwicklung eines Plone-AddOns ist es aber häufiger sinnvoll, alle Objekte in einem Container-Objekt anzuordnen. Die in diesem Container angeordneten weiteren Objekte (Subs), werden dann nicht im Navigationsmenü der ersten Ebene (standardmäßig im Kopf der Seite) angezeigt. Wenn dies gewünscht wird, lässt sich dies im Administrationsmenü “Site Setup” unter “Navigation” einstellen. Dort findet sich ein Eintrag mit dem Titel “Root”. Diesen Navigationsroot kann man so einstellen, dass er auf die URL des obersten Container-Objekts des Add-Ons zeigt, beispielsweise auf “/conference”, wenn die erstellte URL auf [Plone-Seitenname]/conference gesetzt wurde.

Dies hat allerdings zur Folge, dass die bisherigen Links zum Login, Register und Accessibility nicht mehr funktionieren. Denn alle diese Links hängen an den Navigation-Root der Seite ein ‘login’ etc. an. Dieser ist nun aber verschoben. In unserem obigen Beispiel ist das ‘/conference’ in der URL zu viel. Es ist daher notwendig, im Bereich “Site Setup” – “Actions” oder im Plone Management Inferface unter “portal_actions” die entsprechenden Einträge zu bearbeiten und jeweils “string:${globals_view/navigationRootUrl}/” durch “string:${portal_url}/” zu ersetzen.