Hallo alle!
Es geht um diese Webseite:
http://www.artgalerie-web.de/typo3/
Ich möchte gerne zwei voneinander unabhängige Menüs/Navigationen auf einer Webseite darstellen.
Das erste Menü ist horizontal (MAINNAVI_TOP) angeordnet und hat ein Untermenü (SUB_NAVI_LINKS) welches auf der linken Seite vertikal angeordnet ist (und selbst wieder Untermenüpunkte bekommt). Die CSS-Darstellung des Untermenüs sind noch nicht fertig und sollen hier auch nicht mein Problem sein.
Das zweite Menü (NAVI_RECHTS) ist auf der rechten Seite. Es soll völlig andere Menüpunkte bekommen wie das erste Menü und vom ersten Menü völlig unabhängig sein.
Das Problem ist nun: Sobald ich einen Menüpunkt aus dem zweiten (rechten) Menü wähle, wird das linke Menü überschrieben mit den Menüpunkten des rechten Menü.
Mit special = directory und entsprechenden special.value = ID im Code der zweiten Navigation habe ich keinen Erfolg. Es würde mir auch nichts nützen als special.value verschiedene IDs einzutragen, weil sich die Anzahl Menüpunkte im rechten Menü ändern könnte, dann müsste ich immer das Script erweitern/ändern. Auch im linken Menü soll die Anzahl der Menüpunkte dynamisch bleiben.
Hier der Seitenbaum (im Sysfolder ist nichts drin, mit dem habe ich nur erstellt um wegen der Problematik ein paar Tests zu machen
Bild: artgalerie-web.de/Seitenbaum.jpg
Und hier der Typoscript-Code dazu der leider nicht funktioniert wie er soll:
page.10 = TEMPLATE
page.10.template = FILE
page.10.template.file = fileadmin/templates/index.html
page.10.workOnSubpart = DOCUMENT_BODY
page.10.relPathPrefix = fileadmin/templates/
#Navigation oben
page.10.subparts.MAINNAVI_TOP = HMENU
page.10.subparts.MAINNAVI_TOP {
entryLevel = 0
1 = TMENU
1.expAll = 1
1.wrap = <ul>|</ul>
1.NO = 1
1.NO.wrapItemAndSub = <li>|</li>
1.ACT = 1
1.ACT.wrapItemAndSub = <li>|</li>
1.ACT.ATagParams = class="aktivMenue"
1.NO.ATagTitle.field = title // nav_title
}
#Sub-Navigation links
page.10.subparts.SUB_NAVI_LINKS = HMENU
page.10.subparts.SUB_NAVI_LINKS {
entryLevel = 1
1=TMENU
1.wrap = <ul>|</ul>
1.NO = 1
1.NO.wrapItemAndSub = <li>|</li>
1.ACT = 1
1.ACT.wrapItemAndSub = <li>|</li>
1.ACT.ATagParams = class="aktivSubMenueLinks"
1.NO.ATagTitle.field = title // nav_title
2 < .1
}
#Navigation rechts
page.10.subparts.NAVI_RECHTS = HMENU
page.10.subparts.NAVI_RECHTS {
special = directory
special.value = 7 #MenueRechts im Seitenbaum hat ID=7
1 = TMENU
1.NO = 1
}
# Zuweisen der Inhaltsbereiche
page.10.subparts.CONTENT_MAIN < styles.content.get
Was soll den mit dem linken Menü passieren, wenn man rechts einen Punkt anklickt? Gar nichts erscheinen? Denn vom oberen Menü ist ja dann kein Punkt aktiv...
Mit dem linken Menü soll nichts passieren. Es soll bleiben wie es ist.
Also müsste ich dem oberen und linken Menü sagen, dass sie auf Ihren Positionen (aktivierten Links) bleiben sollen? Da schau ich mal nach, wie das gehen könnte.
Oder bin ich da auf dem Holzweg?
Holzweg, es kann logischerweise nur ein Link gerade aktiv sein, nämlich der zu der Seite auf der der Besucher sich befindet. D.h. klickt er rechts was, dann ist auch dort der Link aktiv. Oben ist dann nichts mehr aktiv (außer, was bei dir nicht der Fall ist, man hätte oben und rechts gleiche Seiten verlinkt).
Vielen Dank Kitsunet.
Jetzt habe ich alle Seiten im Typo3-Seitenbaum in eine "Über"-Seite einkopiert. Die entry-Level habe ich auch entsprechend angepasst. Leider hilft das nichts. Obwohl ja auf gleicher Menüebene ein Link aktiv ist wenn ich auf AGB oder Impressum klicke. Klar: der Link ist im Menü nicht sichtbar.
Ich steh doch ein wenig auf dem Schlauch. Ich habe es eigentlich genau so gemacht wie im Video bei Wowa-webdesign
http://www.youtube.com/watch?v=q4YVkNWYw_U&feature=player_embedded
Außer dass ich ohne TemplaVoila arbeite.
Bild: artgalerie-web.de/Seitenbaum2.jpg
Ich nehme doch an die "Hauptmenü Punkt" 1 und 2 sollen oben auftauchen, AGB und Impressum rechts und die Unterpunkte von "Hauptmenü Punkt" dann links? Dann musst du doch für das rechte Menü jetzt nur ein special directory auf die Seite "MenueRechts" machen und für oben den Entry Level anpassen, so dass deine Seiten zu sehen sind. Links entsprechend eins höher. Allerdings musst du dein HTML+CSS so anpassen, dass die linke Spalte nicht eine Höhe von 0 hat, wenn keine Unterpunkte drin sind, sonst rutscht dein Content nach links...
Ja genau: Die Hauptmenüpunke sollen oben horizontal stehen.Und die Unterpunkte sind links. Solange ich nur die Hauptmenü- und Untermenüs anklicke funktioniert auch alles prima.
Nur sobald ich etwas aus dem rechten Menü (AGB oder Impressum) anklicke, wird ja das linke Menü überschrieben. Und das ist nicht gewünscht. Im linken Menü soll sich nichts ändern, wenn ich etwas aus dem rechten Menü anklicke.
Das "special = directory" habe ich ja dem rechten Menü schon mitgegeben:
#Navigation rechts
page.10.subparts.NAVI_RECHTS = HMENU
page.10.subparts.NAVI_RECHTS {
special = directory
special.value = 7
..
...
....
Sollte später etwas mit dem CSS nicht stimmen, werde ich danach sehen. Im Moment finde ich aber nicht den Fehler in meinem Script (oder Seitenaufbau oder was auch immer). 😢
Ich habe auch schon versucht die Seiten im Seitenbaum hin und her zu verschieben und ineinander zu schachteln....habe jede Menge Kombinationen getestet...leider ohne Erfolg, das Problem bleibt das gleiche.
Obwohl "special = directory" ja eigentlich genau das machen sollte was ich brauche.
Trotzdem Danke!
Ich sage es nochmal, was du willst ist so nicht möglich. Wenn du TYPO3 sagst: "Ich möchte die Seiten der zweiten Unterebene links sehen" (entryLevel = 2), dann bezieht sich das auf die aktuell aufgerufene Seite (ist doch logisch) und da die Seiten rechts keine Unterseiten haben wird links nichts angezeigt. Nichts im Menü zu ändern ist total unsinnig, weil ja die Seite oben gar nicht mehr aktiv ist, d.h. von welcher Seite sollte TYPO3 da die Unterseiten zeigen, wenn keine Seite von oben aktiv ist? Man könnte sich jetzt wahrscheinlich eine Kontruktion überlegen, die die letzte SeitenID die oben angeklickt wurde mitschleift, aber ich würde dir da aus verschiedenen Gründen deutlich von abraten.
Das bedeutet: man kann keine 2 Menüs völlig unabhängig voneinander auf einer Seite darstellen?
Das würde zwar meine Frage beantworten, aber eine Lösung für das Problem habe ich damit nicht. Dann muss ich wohl das rechte Menü statisch lassen und die links "manuell" setzen.
Falls noch jemand einen Lösungsansatz mit TypoScript hat, kann er/sie ihn gerne posten.
Danke dir Kitsunet!
Nein, man kann viele Menüs unabhängig voneinander darstellen, ABER ein Besucher einer Webseite kann nur genau eine Seite gerade aktiv haben und an genau dieser Seite entscheidet TYPO3 was in welchem Menü angezeigt wird. Das ist ein Logikproblem in deiner Menüidee glaube ich. Grundsätzlich musst du jede Seite getrennt betrachten, es gibt keinen Status ala "welche Seite des oberen Menüs wurde zuletzt angeklickt", nur die aktuelle Seite zählt. Will man diesen Status muss man sich das selbst zusammenprogrammieren, denn dann müsste der Klickverlauf ja gespeichert werden.