Wie zeige ich Untermenüs getrennt von ihrem Menübaum an? [geschlossen]


8

Ich versuche, alle Untermenüs der 3. Ebene für einen Menüpunkt auf einer Seite anzuzeigen, wobei sich jedes in einem eigenen Anzeigeblock befindet. Ich habe das Menüblock-Modul ausprobiert, aber es scheint nur für den aktiven Trail zu funktionieren. Das bedeutet, dass ich nur alle Menüs der 2. und 3. Ebene als eine Einheit anzeigen kann und nicht nur die Menüs der 3. Ebene als separate Einheiten.

Neben dem Menüblock-Modul habe ich auch versucht, mit diesem Code direkt auf den Menübaum zuzugreifen.

      $main = menu_navigation_links('main-menu', '2');
      echo theme('links__system_main_menu', array(
      'links' => $main,
      'attributes' => array(
      'id' => 'main-menu',
      'class' => array('links')
    ),
  ));
?>

Hier ist die Menüstruktur:

- Parent Menu 1
- Parent Menu 2
  - Child Menu A
    - SubChild Menu 1A
    - SubChild Menu 2A
    - SubChild Menu 3A    
- Child Menu B
  - SubChild Menu 1B
  - SubChild Menu 2B
  - SubChild Menu 3B

Was ich anzeigen möchte, wenn Elternmenü 2 ausgewählt ist:

Block 1: Unterkindermenü 1A | Unterkindmenü 2A | Unterkindermenü 3A

Block 2: Unterkindermenü 1B | Unterkindmenü 2B | Unterkindermenü 3B

Jede Hilfe bei der richtigen Anzeige von Untermenüs, die von ihrem Baum getrennt sind, wäre sehr dankbar.


Sie müssen einen direkten Datenbankabruf durchführen.
Niksmac

Sie müssen die Quelle für Ihr sekundäres Menü einstellen. Obwohl es für Drupal 6 ist, hat mir dieses Video sehr geholfen, es für Drupal 7 einzurichten
Tim

Sind "Kindermenü A" und "Kindermenü B" eigentlich keine Menüpunkte (dh dienen sie nur als Überschriften oder Trennwände)? Warum genau möchten / müssen Sie die beiden Untermenüs in separate Blöcke aufteilen? Die beste / einfachste Lösung liegt möglicherweise außerhalb dessen, was Sie hier versuchen. Daher ist es hilfreich zu wissen, was Ihr eigentliches Endziel ist, damit wir andere Optionen in Betracht ziehen können.
sheena_d

Am

Untergeordnetes Menü A und Untergeordnetes Menü B sind beide Menüpunkte. Ich versuche, alle Untermenüs aus dem untergeordneten Menü A in einem Block, alle Untermenüs aus dem untergeordneten Menü B in einem anderen Block usw. auf einer Seite anzuzeigen. Es ist eine Übersichtsseite für alle verschiedenen Abschnitte des untergeordneten Menüs.
Benutzer1240408

Antworten:


5

Ich denke, der beste Weg, dies zu tun, besteht darin, nur das Menüblockmodul zu verwenden . Hier ist ein Zitat dazu (von der Projektseite des Moduls):

... haben Sie jemals die Haupt- und Nebenmenü-Link-Funktion für Ihr Thema verwendet und sich gefragt, wie zum Teufel ich Menüpunkte tiefer als diese anzeige?

Genau das macht dieses Modul. Es bietet konfigurierbare Blöcke von Menübäumen, beginnend mit jeder Ebene eines beliebigen Menüs. Und mehr!

Wenn Sie also nur die Funktion "Hauptmenü-Links" Ihres Themas verwenden, können Sie einen Block "Hauptmenü (Ebenen 2+)" hinzufügen und konfigurieren. Dieser Block wird angezeigt, sobald Sie sich auf einer der Seiten des Hauptmenüs befinden. Er zeigt den Menübaum für die 2. Ebene (und tiefer) Ihres Hauptmenüs an und wird beim Durchlaufen des Baums erweitert. Sie können auch die Tiefe des Menübaums begrenzen (z. B. „Hauptmenü (Ebenen 2-3)“) und / oder alle untergeordneten Untermenüs erweitern (z. B. „Hauptmenü (erweiterte Ebenen 2+)“).


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.