Benutzerdefiniertes Rendering von Zend_Navigation

8

Ich verwende eine Navigations-XML-Datei in Verbindung mit meiner Zend Framework MVC App.

Ein Top-Level-Menü wird am oberen Rand meines Layouts gerendert. Der Code zum Erstellen sieht folgendermaßen aus:

%Vor%

Dadurch wird automatisch eine ungeordnete Liste von Links, die ich gestylt habe, in mein Hauptmenü gerendert. Nun möchte ich das Submenü (um den aktiven Containerbaum darzustellen) rendern, indem ich die Vorteile der integrierten Zend_Navigation-Güte (MVC- und ACL-Integration) aber mit benutzerdefiniertem Markup ausnutze. Ich würde dies tun, indem ich folgendes einfüge:

%Vor%

Tatsächlich habe ich einen sehr speziellen Markup-Satz, mit dem ich das rendern muss. Es ist so drastisch anders. Ich denke nicht, dass ich eine ungeordnete Liste entwerfen könnte, um meine gewünschte Präsentation zu empfangen.

Gibt es einen einfachen Weg (oder kompliziert, wenn nötig), um ein Untermenü anzupassen?

    
Andy Baird 28.12.2009, 21:14
quelle

2 Antworten

11

Sieh dir diese Antwort von mir an: Zend_Navigation bekommen Menü, um mit jQuerys Fisheye zu arbeiten

Zusammenfassend erstellen Sie eine Ansicht für die Navigation und eine Schleife durch die Seiten und verwenden die Seitenmethoden zum Erstellen eines benutzerdefinierten Markups. Soweit ich weiß, gibt es zur Zeit keine Decorator-ähnliche Unterstützung für Navigation.

    
typeoneerror 28.12.2009, 22:16
quelle
7

Typeoneerror brachte mich auf den richtigen Weg, hier ist der Code, den ich am Ende benutzt habe:

In layout.phtml:

%Vor%

In sidemenu.phtml:

%Vor%

Arbeitete wie ein Zauber und ließ dies als Antwort für jemand anderen zurück.

    
Andy Baird 29.12.2009 00:27
quelle