Zum Inhalt springen

Navigation: Level 3 in Spalte Rechts darstellen.

Erstellt am 6. Juni 2005 · 17 Antworten · letzte Antwort am 9. Juni 2005

Tags: Frage

toyde ·

- 1 Marker/Subpart für Hauptmenü
- 1 Marker/Subpart für dein 2.Menü / Untermenü

Im HTML logischerweise also die beiden Marker/Subparts platzieren. Das Hauptmenü hast du ja. Davon ausgehend zusammen mit den Codesnippets aus der Doku bastelst du dir dein Untermenü, das mit special wunderbar klappt.

Falls du Probleme mit Markern/Subparts oder Navigationen hast, dann würde ich dir raten mehr über HMENU und Special nachzulesen.

The Gardener ·

Hi,

ich habe 2 Submarker (NAVIGATION und LEVEL3) erstellt. Mit folgendem Script spreche ich beide an und es werden zur Zeit in beiden Submarkern alle 3 Ebenen angezeigt. Nun weiss ich nicht weiter. Wie blende ich in LEVEL§ die ersten beiden Ebenen aus? Da brauche ich nochmal einen Hinweis.

Gruß
Michael

10.subparts {
# Navigation linke Spalte
# 1. Navigationslevel
               NAVIGATION = HMENU
               NAVIGATION {
                             special = directory                   
                             special.value = 3
                             entryLevel = 1
                             1 = TMENU
                             1.NO = 1
                             1.NO.ATagParams = class="nav_main"
                             1.NO.linkWrap = | |*| <br />| |*| <br />|
                             
# 2. Navigationslevel
                             2 = TMENU
                             2.NO = 2
                             2.NO.ATagParams = class="nav_sub"
                             2.NO.linkWrap =  <br />   

# 3. Navigationslevel NUR VORÜBERGEHEND
                             3 = TMENU
                             3.NO = 3
                             3.NO.ATagParams = class="nav_sub"
                             3.NO.linkWrap =  <br />  
                }                      

# Navigation rechte Spalte
# 1. Navigationslevel
               LEVEL3 = HMENU
               LEVEL3 {
                             special = directory                   
                             special.value = 3
                             entryLevel = 1
                             1 = TMENU
                             1.NO = 1
                             1.NO.ATagParams = class="nav_main"
                             1.NO.linkWrap = | |*| <br />| |*| <br />|
                             
# 2. Navigationslevel
                             2 = TMENU
                             2.NO = 2
                             2.NO.ATagParams = class="nav_sub"
                             2.NO.linkWrap =  <br />   

# 3. Navigationslevel NUR VORÜBERGEHEND
                             3 = TMENU
                             3.NO = 3
                             3.NO.ATagParams = class="nav_sub"
                             3.NO.linkWrap =  <br />  
                }   
}
toyde ·

hi

weshalb möchtest du das Hauptmenü ausblenden?
Verstehe die Logik betreffend der Hierarchie nicht ganz, dann kann ich evtl. noch weiterhelfen.

Wenn du ein Menü/Subpart ausblenden/löschen/leeren möchtest, kannst du ja

NAVIGATION =
#oder 
NAVIGATION >

verwenden.. (das leert den Parameter, bzw. überschreibt ihn mit "")
Aber wie das bei einer Homepage Sinn macht, musst du mir etwas auf die Sprünge helfen. (evtl. sogar Screenshot/Link?. Wenn's sein muss auch PM).

cya

edit:
------
sry, jetzt komm ich erst nach, was du meinst.
Du hast in deiner rechten Spalte das ganze Menü ja nochmals definiert!
Finde ich etwas seltsam deine Frage, da du das Menü ja selbst mit den Levels 1+2+3 nachgebaut hast ;P Was du machst: Du baust auch level1+2 ein, und möchtest es wieder ausblenden - macht das Sinn? Überleg mal.

Ausserdem:
Bist du sicher, dass du special directory verstanden hast? Ich glaube du hast ein kleines Durcheinander wie man HMENU (hierarchisches Menü bezogen auf Page-Tree) und das special-Menü unterscheidet. Kennst du den Unterschied?

The Gardener ·

Hi.

ich hatte befürchtet, dass wir eventuell aneinander vorbeireden.
Liegt vielleicht an meiner Darstellungsweise.

Worum es mir geht: Ich habe eine Navigation mit max 3 Ebenen. In
einer linken Spalte möchte ich die ersten beiden Ebenen ausgeben.
Die dritte Ebene, die es nicht immer gibt, soll in der rechten Spalte
erscheinen.

Ich habe in meinem letzten Post einfach die Navi nochmal aufgezogen um
zu sehen ob es funktioniert den Submarker anzusprechen. Aber eigentlich soll
da nur die dritte Ebene erscheinen. Wenn es keine dritte Ebene gibt, dann
bleibt der Bereich leer.

In dem Shot, den Du unter http://www.limbic-entertainment.de/screenshot.gif findest, siehst Du:
Ebene 1: Unternehmen
Ebene 2: Partner
Ebene 3: RTL
Jeder Partner, wie RTL, hat je eine eigene Seite, die dritte Ebene.

Die Navi dazu soll in der rechten Spalte erscheinen. Die fehlt mir.
In dem Shot als Partner 1 bis Partner n eingezeichnet.
Vielleicht ist es jetzt etwas klarer.

Michael

The Gardener ·

Nochmal zu Deiner Frage:

Wie ich das verstehe mit HMENU und special.

HMENU ist ein hierarchisches Menü. Davon gibt es verschiedene Arten: Text, Grafisch usw.

Special definiert praktisch die Hierachie.
Directory ist eine Baumstruktur ausgehend von einer Seite und stellt alle
verknüpften Seiten dar. Dafür nimmt man dann z.B. Die Hilfsseite "Navigation".
als Shortcut.

Für die dritte Ebene kann ich leider keine eindeutige Shortcutseite definieren. Deswegen dachte ich mir, es müsste irgendwie gehen den
ganzen Baum abzufragen aber nur die dritte Ebene darzustellen.

toyde ·
The Gardener schrieb

Special definiert praktisch die Hierachie.
Directory ist eine Baumstruktur ausgehend von einer Seite und stellt alle
verknüpften Seiten dar. Dafür nimmt man dann z.B. Die Hilfsseite "Navigation".
als Shortcut.

Special definiert welche Art Menü. "Hierarchie" stellt HMENU dar ;P Directory sagt einfach von welcher Seite aus der Ast angezeigt werden soll (nenne es nicht shortcut, das verwirrt die Leser 😉.

The Gardener schrieb

Für die dritte Ebene kann ich leider keine eindeutige Shortcutseite definieren. Deswegen dachte ich mir, es müsste irgendwie gehen den
ganzen Baum abzufragen aber nur die dritte Ebene darzustellen.

Und weshalb kannst du das nicht? Wo liegt das Problem? Doku nicht gelesen? - Wie hast du denn das rechte obere Menü gezaubert? ;P

Schau, alles was du für deine rechte Spalte brauchst ist (beziehe mich jetzt auf deinen Screenshot):
"Wenn Seite 'Partner' aktiv, dann Partner 1-n rechts anzeigen"..
Dann sagst du im TypoScript deiner Seite 'Partner' doch logischerweise;

special = directory
# 31= ID der 'Partner'-Seite
special.value = 31

Das heisst zwar subTemplates erstellen, aber klappt.

cya

toyde ·

Zusatz:
Eines meiner subTemplates für das 2. Level(bei dir als subTemplate der Seite "Partner" anzusehen). Bei mir werden Hauptmenü oben und 2.-Submenü links dargestellt.

### NAVIVER-Configs - werden je nach Submenu ueberschrieben
temp.menu_2 = HMENU
temp.menu_2.special = directory
temp.menu_2.special.value = 96
temp.menu_2.1 = TMENU
temp.menu_2.1.NO.linkWrap = <tr><td height="10" class="NAVIVERLINK" valign="top"> | ::</td></tr>
temp.menu_2.1.ACT = 1
temp.menu_2.1.ACT.linkWrap = <tr><td height="10" class="NAVIVERLINKACT" valign="top"> | ::</td></tr>

### Konfiguration in Haupttemplate beruecksichtigen
page.10 {
 subparts.TPL_NAVIVER = COA
 subparts.TPL_NAVIVER {
   10 < temp.menu_2
 }
}

TPL_NAVIVER stellt meine vertikale Navigation im HTML-Template dar.

subTemplates erstellen(alle drei Häckchen raus) und den oberen Code in's Setup rein. Der untere Teil meines Codes dient dazu, die Navigation in mein Haupt-TypoScript-Template aufzunehmen(page.10).

The Gardener ·

Hey Toyde,

vielen Dank für Deine Mühe. Jetzt habe ich auch das Prinzip verstanden auf das Du hinaus wolltest. Im Subtemplate wird die dritte Ebene ausgehend von der Seite der 2. Ebene aufgebaut. Dieses Subtemplate muss man für jede Seite der 2. Ebene erstellen (Sofern man die dritte Ebene ermöglichen möchte). Das Haupttemplate kopiert oder übernimmt die Werte aus dem Subtemplate und stellt entsprechend die dritte Ebene dar. Richtig?

So weit so gut. Habe das mal umgesetzt. Mein Submarker wird auch angesprochen, die Navi leider nicht angezeigt. Nach stundenlangem suchen finde ich den Haken nicht. Eigentlich müste es jetzt so laufen.

page = PAGE
page {
     typeNum = 0

# Designvorlage integrieren
     10 = TEMPLATE
     10 {
          template = FILE
          template.file = fileadmin/vorlage_01.html
          workOnSubpart = DOKUMENT


     marks {
# Die Hauptnavigation im Platzhalter NAVIGATION erstellen
# 1. Navigationslevel
               NAVIGATION = HMENU
               NAVIGATION {
                             special = directory                   
                             special.value = 3
                             entryLevel = 1
                             1 = TMENU
                             1.NO = 1
                             1.NO.ATagParams = class="mainmenu_no"
                             1.NO.linkWrap = | |*| <br />| |*| <br />|
                             1.ACT = 1
                             1.ACT.ATagParams = class="mainmenu_act"
                             1.ACT.linkWrap = | |*| <br />| |*| <br />|

# 2. Navigationslevel
                             2 = TMENU
                             2.NO = 2
                             2.NO.ATagParams = class="submenu_no"
                             2.NO.linkWrap =  <br />  
                             2.ACT = 2
                             2.ACT.ATagParams = class="submenu_act"
                             2.ACT.linkWrap =  <br />  

                }  
     }

             subparts.LEVEL3 = COA
             subparts.LEVEL3 {
                    10 < temp.menu_2
             }


}


}
temp.menu_2 = HMENU
temp.menu_2 {
            special = directory
            special.value = 26
            1 = TMENU
            1.NO = 1
            1.NO.ATagParams = class="submenu_no"
            1.NO.linkWrap =  <br />  
            1.ACT = 1
            1.ACT.ATagParams = class="submenu_act"
            1.ACT.linkWrap =  <br />
             }

Habe zur Zeit keine Idee. Vielleicht seh ich den Wald vor lauter Bäumen wieder nicht.

Gruss
Michael

The Gardener ·

Eine andere Sache, die ich mich frage. Wenn jetzt ein Redakteur eine neue Seite in der 2. Ebene einfügt und dazu auch unterseiten, dann wird die Navigation nicht angezeigt. Das Subtemplate fehlt ja. Das ist ein Nachteil an dieser Methode.

Gruss
Michael