Zum Inhalt springen

Menü 3 Ebenen - 3 Marker

Erstellt am 17. Juli 2008 · 9 Antworten · letzte Antwort am 28. Juli 2008

Tags: Frage

crossl ·

Ich möchte ein Menü mit 3 Ebenen abbilden. Und zwar so, dass 3 verschiedene Marker im HTML Layout zugewiesen werden.
Ebene 1: Hauptmenü OBEN Horizontal
Ebene 2: Menü LINKS Vertikal
Ebene 3: Menü RECHTS vom Linken Menü Vertikal

page = PAGE
page.typeNum = 0
page.10 = TEMPLATE
page.10{
     template = FILE
     template.file = fileadmin/templates/main.tpl.htm
     workOnSubpart = DOKUMENT

     marks {
       CENTER < styles.content.get
       BANNER_TXT < temp.SLOGAN 
       BANNER_TXT.fontSize=15 
       FOOTER_CEN=TEXT 
       FOOTER_CEN {
         value=Impressum
       }          
       
       #menue
       # Menü (Ebene 1)
       MENUE_TOP = HMENU
       MENUE_TOP {
        special = directory
        special.value = 2
        entryLevel = 1
         1 = GMENU
         1.noBlur=1
         1.NO = 1
         1.NO {
	   XY=[20.w]+30,20
	   backColor=#8E8E8E
	   20=TEXT
	   20.text.field=title
	   20.fontColor=#ffffff
	   20.text.case = upper
	   20.align=center
	   20.offset=0,14		 
	}
	1.RO=1
	1.RO<.1.NO
         1.RO {
	   20.fontColor=#e3001b 	 
	}
	1.ACT=1
	1.ACT<.1.NO
         1.ACT {
	   backColor=#e3001b 	 
	}

       }
       
       # Menü (Ebene 2)
       LEFT_TOP = HMENU
       LEFT_TOP {
        special = directory
        special.value = 2
        entryLevel = 1
         1 = GMENU
         1.noBlur=1
         1.NO = 1
         1.NO {

            15=IMAGE
            15.file=fileadmin/images/button_wh.jpg
            15.offset=0,7
	   XY=[20.w]+10,20
	   backColor=#6b6f72
	   20=TEXT
	   20.text.field=title
	   20.fontColor=#ffffff
	   20.offset=10,14
	   wrap=<br>|	
	 
	}
	1.RO=1
	1.RO<.1.NO
         1.RO {
	   20.fontColor=#e3001b 	 
	}
	1.ACT=1
	1.ACT<.1.NO
         1.ACT {
            15=IMAGE
            15.file=fileadmin/images/button_r.jpg
            15.offset=0,7

	 
	}
       }

       # Menü (Ebene 3)
       INPAGE_LE = HMENU
       INPAGE_LE {
        special = directory
        special.value = 18
        entryLevel = 2
         1 = GMENU
         1.noBlur=1
         1.NO = 1
         1.NO {

            15=IMAGE
            15.file=fileadmin/images/button_wh.jpg
            15.offset=0,7
	   XY=[20.w]+10,20
	   backColor=#6b6f72
	   20=TEXT
	   20.text.field=title
	   20.fontColor=#ffffff
	   20.offset=10,14
	   wrap=<br>|	
	 
	}
	1.RO=1
	1.RO<.1.NO
         1.RO {
	   20.fontColor=#e3001b 	 
	}
	1.ACT=1
	1.ACT<.1.NO
         1.ACT {
            15=IMAGE
            15.file=fileadmin/images/button_r.jpg
            15.offset=0,7

	 
	}
       }

  }
}

So sieht mein TS Code aus - und da probiere ich jetzt schon seit Stunden herum und ich bekomme das nicht zum RICHTIG Laufen.
2 Ebenen klappen noch, aber wenn ich die 3. Ebene mit dem 3. Marker einbinden will geht gar nix mehr.
Wobei ich den Code jetzt schon so massakriert habe, dass jetzt nicht mal mehr die 1. Ebene stimmt.

Wer kann mir da helfen?

Unbekannter Benutzer ·

Also nach deinem Script gibt ja schonmal die 1. und 2. Eben dasselbe aus, denn bei beiden ist

special = directory
special.value = 2
entryLevel = 1

gleich.

Mal übersetzt: Du möchtest ein Verzeichnis auslesen, bei dem die Übergeordnete Seite die ID 2 hat. Möchtest aber zusätzlich das bei Ebene 1 bgonnen wird. Macht das für dich irgend wie Sinn?
entryLevel und special = directory passt nicht zusammen und funktioniert auch nicht zusammen. Das findet man allerdings hier im Forum bald in jedem zweiten Thread.

Also bei der ersten Ebene brauchst du wahrscheinlich nichts von alledem.
In der Zweiten und dritten Ebene nimmst du NUR entryLevel um festzulegen, welche Menüebene ausgegeben werden soll.

Ansonsten kannst du dir das Aktivieren von Menüzuständen sparen, wenn NO schon aktiviert ist und von NO kopierst.

So meine ich das:

	marks {
       # menue
       # Menü (Ebene 1)
		MENUE_TOP = HMENU
		MENUE_TOP {
			1 = GMENU
			1.noBlur=1
			1.NO = 1
			1.NO {
				XY=[20.w]+30,20
				backColor=#8E8E8E
				20=TEXT
				20.text.field=title
				20.fontColor=#ffffff
				20.text.case = upper
				20.align=center
				20.offset=0,14              
			}
			1.RO < .1.NO
			1.RO {
				20.fontColor=#e3001b         
			}
			1.ACT < .1.NO
			1.ACT {
				backColor=#e3001b    
			}
		}
       # Menü (Ebene 2)
		LEFT_TOP = HMENU
		LEFT_TOP {
			entryLevel = 1
			1 = GMENU
			1.noBlur=1
			1.NO = 1
			1.NO {
				15=IMAGE
				15.file=fileadmin/images/button_wh.jpg
				15.offset=0,7
				XY=[20.w]+10,20
				backColor=#6b6f72
				20=TEXT
				20.text.field=title
				20.fontColor=#ffffff
				20.offset=10,14
				wrap=<br>|   
			}
			1.RO < .1.NO
			1.RO {
				20.fontColor=#e3001b         
			}
			1.ACT < .1.NO
			1.ACT {
				15=IMAGE
				15.file=fileadmin/images/button_r.jpg
				15.offset=0,7
			}
		}
      # Menü (Ebene 3)
		INPAGE_LE = HMENU
		INPAGE_LE {
			entryLevel = 2
			1 = GMENU
			1.noBlur=1
			1.NO = 1
			1.NO {
				15=IMAGE
				15.file=fileadmin/images/button_wh.jpg
				15.offset=0,7
				XY=[20.w]+10,20
				backColor=#6b6f72
				20=TEXT
				20.text.field=title
				20.fontColor=#ffffff
				20.offset=10,14
				wrap=<br>|
			}
			1.RO < .1.NO
			1.RO {
				20.fontColor=#e3001b         
			}
			1.ACT < .1.NO
			1.ACT {
				15=IMAGE
				15.file=fileadmin/images/button_r.jpg
				15.offset=0,7
			}
		}
	}

Aussagen wie "das funktioniert nicht mehr" bringt natürlich auch nichts, wenn du nicht verrätst was denn nicht funktioniert...

Schau bitte mal in das erste Thema dieses Forenbereichs. Da findest du alle Menüs aufgelistet. Da ist auch das Menü bei, wo man auf die verschiedenen Marker die einzelnen Ebenen legt.

crossl ·

Ich möchte jetzt noch folgendes lösen:
Bei Auswahl eines Menüpunktes aus Level3, soll daneben (INPUT_LE) in einem neuen Marker INPUT_RE der Content der Seite angezeigt werden.
Bei den anderen Seiten Level1-2, wird der Content aber in CENTER angezeigt.
Ich habs mal probiert sh. unten, aber da wird nur der Content bei Level1-2 richtig angezeigt.

page.10{
     template = FILE
     template.file = fileadmin/templates/main.tpl.htm
     workOnSubpart = DOKUMENT

     marks {
       CENTER < styles.content.get
       CENTER < styles.content.get
       BANNER_TXT < temp.SLOGAN 
       BANNER_TXT.fontSize=15 
       FOOTER_CEN=TEXT 
       FOOTER_CEN {
         value=Impressum
       }          
       
       # menue
       # Menü (Ebene 1)
                MENUE_TOP = HMENU
                MENUE_TOP {
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                XY=[20.w]+30,20
                                backColor=#8E8E8E
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.text.case = upper
                                20.align=center
                                20.offset=0,14             
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                backColor=#e3001b   
                        }
                }
       # Menü (Ebene 2)
                LEFT_TOP = HMENU
                LEFT_TOP {
                        entryLevel = 1
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                15=IMAGE
                                15.file=fileadmin/images/button_wh.jpg
                                15.offset=0,7
                                XY=[20.w]+10,20
                                backColor=#6b6f72
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.offset=10,14
                                wrap=<br>|   
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                15=IMAGE
                                15.file=fileadmin/images/button_r.jpg
                                15.offset=0,7
                        }
                }
      # Menü (Ebene 3)
                INPAGE_LE = HMENU
                INPAGE_LE {
                        entryLevel = 2
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                15=IMAGE
                                15.file=fileadmin/images/button_wh.jpg
                                15.offset=0,7
                                XY=[20.w]+10,20
                                backColor=#6b6f72
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.offset=10,14    
                                wrap=<br>|
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                15=IMAGE
                                15.file=fileadmin/images/button_r.jpg
                                15.offset=0,7
								INPAGE_RE < styles.content.get
                        }

                }
 
  
 
  }
}
Unbekannter Benutzer ·

Zeile 8 ist schonmal doppelt...

Ich hab keine Ahnung was INPAGE_RE sein soll... Das kopierst du nach styles.content.get und dennoch steht das in deinem Menüzustand ACT der dritten Ebene... Keine Ahnung wie darauf kommst dass das da hin gehört...

INPAGE_RE ist doch bestimmt ein Marker. Ich hatte doch extra alles so schön eingerückt, damit du besser siehst was wozu gehört. Wenn das wirklich ein Marker sein soll, den du auch noch auf styles.content.get kopierst, dann gehört der schonmal in deinen marks {}.
Aber mal nebenbei... was erwartesz du denn was da angezeigt wird, wenn du den Marker CENTER und INPAGE_RE auf dasselbe Elment kopierst?

crossl ·

sorry - hab mich verschrieben.
INPAGE_LE (Marker für Menü Level3), INPAGE_RE (Marker für Inhalt, dort soll der Inhalt von Seiten im Level4 stehen.

zB.:
Menü
Level3
Level4

Fahrten
Jänner 08
Februar 08
Ausflüge
Jänner 08
Februar 08

Wenn der User im Menü auf "Fahrten" klickt, soll rechts (im Marker INPUT_RE)
der Content von "Jänner o8" stehen, und darunter ein "WEITER". Mit WEITER erscheint dann in INPUT_RE der Content von "Februar 08" usw.

crossl ·

nochmals mein Wunsch:
Ich möchte in einem HMENU, dass in einem Submenü (Level2), wenn weitere Unterseiten vorhanden sind,
nicht die Seite im Menü angezeigt wird, sondern gleich der Inhalt der ersten Unterseite in einem Marker (INPUT_RE) angezeigt wird.
Habe so probiert - aber da tut sich nix :-(

 page.10{
     template = FILE
     template.file = fileadmin/templates/main.tpl.htm
     workOnSubpart = DOKUMENT
   
     marks {
       CENTER < styles.content.get
       FOOTER_CEN=TEXT
       FOOTER_CEN {
         value=Impressum
       }         
       
       # menue
       # Menü (Ebene 1)
                MENUE_TOP = HMENU
                MENUE_TOP {
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                XY=[20.w]+30,20
                                backColor=#8E8E8E
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.text.case = upper
                                20.align=center
                                20.offset=0,14             
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                backColor=#e3001b   
                        }
                }
       # Menü (Ebene 2)
                LEFT_TOP = HMENU
                LEFT_TOP {
                        entryLevel = 1
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                15=IMAGE
                                15.file=fileadmin/images/button_wh.jpg
                                15.offset=0,7
                                XY=[20.w]+10,20
                                backColor=#6b6f72
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.offset=10,14
                                wrap=<br>|   
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                15=IMAGE
                                15.file=fileadmin/images/button_r.jpg
                                15.offset=0,7
                        }
                }
     
                # Menü (Ebene 3)
                INPAGE_LE = HMENU
                INPAGE_LE {
                        entryLevel = 2
                        1 = GMENU
                        1.noBlur=1
                        1.NO = 1
                        1.NO {
                                15=IMAGE
                                15.file=fileadmin/images/button_wh.jpg
                                15.offset=0,7
                                XY=[20.w]+10,20
                                backColor=#6b6f72
                                20=TEXT
                                20.text.field=title
                                20.fontColor=#ffffff
                                20.offset=10,14   
                                wrap=<br>|
                        }
                        1.RO < .1.NO
                        1.RO {
                                20.fontColor=#e3001b         
                        }
                        1.ACT < .1.NO
                        1.ACT {
                                15=IMAGE
                                15.file=fileadmin/images/button_r.jpg
                                15.offset=0,7

                        }
                          1.IFSUB = 1
                          1.IFSUB < .1.NO
                          1.IFSUB {
                              marks.INPAGE_RE.value=test
                          }

                }


 
  }

Wer kann mir da weiterhelfen?

crossl ·

Jetzt habe ich probiert im TS-Config einer entsprechenden Unterseite:

page.10{
   
     marks {
       INPUT_RE < styles.content.get
       FOOTER_CEN=TEXT
       FOOTER_CEN {
         value=Impressum2
       }     
       
}

Aber trotzdem wird der Content im Marker CENTER ausgegeben :-(
Wäre das nicht eine Lösung??

crossl ·

das Typoscript war soweit schon richtig - nur musste bei der Seite zuerst ein EXTENSION TEMPLATE anlegen, und da im TS SETUP den Code einsetzen.
Und das klappt :-)

Mein Problem mit der Darstellung mehrere Unterseiten - mit vor- und zurückblättern besteht aber noch.
Vielleicht hat ja doch jemand eine Idee...

crossl ·

und mit der Extension cc_cbrowse habe ich jetzt auch das Anzeigen der Unterseiten gelöst.
Dabei verwende ich jetzt aber keine Seiten, sondern mehrere Contentelemente.