Breadcrumbmenü

Im nächsten Codeabschnitt werden dann der Titel und die Trenner für das Breadcrumbmenü eingetragen.

  1. //  Titel und Trennzeichen für Breadcrumb-Links festlegen
  2. $bcTitle = 'Sie befinden sich hier: ';
  3. $bcDivi  = '<span class="bcDivi"> | </span>';
  4. // Servernamen im Breadcrumb mit der Startseite verlinken
  5. // $bcServerLink = 'on|off'
  6. $bcServerLink = 'off';

Das Breadcrumbmenü zeigt die aktuelle Seite in einem Pfad an, bei dem alle übergeordneten Kategorien als Link angezeigt werden. Die aktuelle Seite wird nicht mit einem Link hinterlegt.

Das Breadcrumbmenü wird im Navigationstemplate generiert und kann an einer beliebigen Stelle in der Seite angezeigt werden.

Über die Variable bcTitle kann der Titel des Menüs festgelegt werden. Die Variable bcDivi bestimmt das Trennzeichen, durch welches die Menüpunkte optisch getrennt werden.

Die Variable bcServerLink sorgt für den Link zum Startartikel der Website, der über den Servernamen zu Beginn des Menü-Pfades angezeigt wird.

Die Beispieleinträge entsprechen dem Breadcrumbmenü wie es auch hier auf raybeam.de eingesetzt wird.

Die Gestaltung der Trennzeichen ist über die CSS-Klasse „.bcDivi“ möglich.

Das gesamte Breadcrumbmenü lässt sich wiederum über die CSS-ID „#breadcrumb“ gestalten.

Da die CSS-Einstellungen des Breadcrumbmenüs über eine CSS-ID und nicht über eine CSS-Klasse eingebunden werden, sollte das Breadcrumbmenü nur einmal pro Seite eingesetzt werden. Bei einer mehrfachen Verwendung wäre der (X)HTML-Code der Seite nicht mehr valide, da ID’s einmalig sein müssen.

root-Artikel Navigation

Über den “Schalter” raNav = ‘on|off’ werden Artikel, die sich im root-Bereich der Seite befinden, automatisch mit ihrem Artikelnamen als Menüpunkte übernommen. Auf diese Weise können diese Artikel z.B. über das YAML-typische “topnav”-Menü verlinkt werden.

  1. // Ein Zusätzliches Menü (z. B. als topnav-Menü) kann auf Basis von root-Artikeln,
  2. // die über eine Meta Info selektiert werden können, oder ohne eine Meta Info
  3. // komplett in die Variable $raNavigation übergeben werden. $raNav = 'on|off'
  4. $raNav = 'on';

In den redaxo-Versionen 3.x werden auf diese Weise grundsätzlich alle Artikel im root-Bereich übernommen, die online sind. Hier gibt es also nur die Möglichkeit alle oder keinen der betreffenden Artikel zu übernehmen.

Etwas komfortabler sind da die Möglichkeiten ab redaxo 4.x. Mit Hilfe der Meta Info’s kann man jeden root-Artikel explizit über eine Meta Info markieren, der im root-Artikel Menü erscheinen soll.

Eine entsprechende Metainfo sollte in Form einer Checkbox angelegt sein und könnte z. B. wie folgt aussehen:

Meta-Info Topnav-Link

Im Anschluss muss dem Template nur noch der Name des Meta Info-Feldes übermittelt werden, aus dem sich ergibt, ob der jeweilige Artikel als Menülink aufgeführt wird oder nicht.

  1. // Festlegen des Meta Info Feldes für die root-Artikel (ab redaxo V. 4.x)
  2. $raMetaInfo = 'art_topnav';

Der vollständige Name setzt sich also immer aus dem Prefix (art_) und dem Spaltennamen zusammen, in unserem Beispiel also ‘art_topnav’.

Sollten sich bei Nutzung der redaxo V. 4.x ausschließlich Artikel im root-Bereich der Seite befinden, die auch als Menü erreichbar sein sollen, kann auf die gesonderte Einrichtung eines Meta Infofeldes verzichtet werden, da hier dann die gleiche Funktionalität wie bei redaxo 3.x vorhanden ist. Alle “online” geschalteten Artikel werden in das Menü übernommen.

Dazu braucht der Quelltext, bzw. die Variable raMetaInfo nicht verändert zu werden. Wenn das benannte Meta Infofeld nicht vorhanden ist werden automatisch alle Artikel übernommen.

Entsprechend der Vorgehensweise beim Breadcrumbmenü kann auch für die root-Artikel Navigation eine Vorgabe für die Trennung der Menüpunkte übergeben werden.

  1. // Trennzeichen für Topnav/Rootartikel-Links festlegen.
  2. // Grundeinstellung: wie Breadcrumb-Trennzeichen
  3. $raDivi  = $bcDivi;

In diesem Beispiel wird einfach die Vorgabe für das Breadcrumbmenü übernommen.