16.03
2016

Beispiel

Nehmen wir an, wir haben Inhaltstypen wie z.B. "Projekte" die in einer Ansicht "Referenzen" gelistet werden und diese Ansicht unser Menüpunkt ist. Die Ansicht und die Nodes nutzen dabei unterschiedliche Pfade. Drupal selbst erkennt hier keinen Zusammenhang und auch Module wie "Menu Trail By Path" helfen hier nicht weiter.

Lösung

Ich zeige hier eine einfache Lösung, ohne auf "Context" und Co. zurückgreifen zu müssen.

Wir benutzen in der template.php den "hook" hook_preprocess_page() und prüfen, ob wir eine Node vom Inhaltstypen "project" betrachten. Anschließend setzen wir via der Funktion menu_tree_set_path() den entsprechenden Menüpunkt/Zweig aus dem Menü "main-menu" aktiv.

function yourtheme_preprocess_page(&$vars) {
  if (isset($vars['node']) AND $vars['node']->type == 'project') {
    menu_tree_set_path('main-menu', 'node/1');
  }
}

"yourtheme" aus dem Beispiel muss mit dem eigenen Themenamen ersetzt werden.

Das Ganze lässt sich zum Beispiel auch für "views" erreichen.
Hier gibt man einfach den Pfad an, den die jeweilige Ansicht (im Beispiel Referenzen) nutzt.

    menu_tree_set_path('main-menu', 'referenzen');

Tastenkürzel: zurück Übersicht Zufall weiter


ähnliche Projekte

Website Tattoo Conventio...

August 2016

Details

© 2009 - 2017 ristaumedia.de • Alle Rechte vorbehalten.

ristaumedia • Burgstraße 9 • 03046 Cottbus

Webdesign: ristaumedia • Powered by Drupal.

Made in Germany with a lot F5.