Zum Inhalt springen

Submenü zwischen Headline und Contenttext

Erstellt am 16. September 2010 · 3 Antworten · letzte Antwort am 21. September 2010

Tags: Frage

Unbekannter Benutzer ·

Hallo zusammen,
ich hoffe, ich kann mein Anliegen/Problem verständlich rüberbringen.

Ich arbeite gerade an einer Seite auf Basis von T3 4.4.2 und TemplaVoila 1.4.4 mit dem ich das Mapping erledigt habe.

Auf meiner Seite gibt es 3 Menütiefen/-level. Level 1 und 2 werden am linken Rand dargestellt. Funktioniert soweit auch problemlos. Menüs auf Level 3 kommen nur selten vor, sollen wenn dann aber innerhalb des Contentbereichs erscheinen. Also innerhalb des Containers, den ich in TV schon als Contentcontainer gemappt habe.

Wie stelle ich das an?

Ein Ausschnitt meines HTML-Templates:

        <div id="nav">
            <ul>
                <li><a href="#">Unternehmen</a></li>
                <li><a href="#">Aktuelles</a></li>
                <li><a href="#" class="active">Beste Isolierung</a></li>
                <div id="nav-2">
                    <ul>
                        <li><a href="#">test 1</a></li>
                        <li><a href="#">test 2</a></li>
                    </ul>
                </div>
                <li><a href="#">Infrarot bis 80° C </a></li>
                <li><a href="#">Planung</a></li>
                <li><a href="#">Produkte</a></li>
                <li><a href="#">Kontakt</a></li>
                <li><a href="#">Impressum</a></li>
            </ul>
        </div>
       
        <div id="content">
            <h1>Musterüberschrift</h1>

            <div id="nav-3">
                <a href="#" class="active">Allgemeines</a>
                <a href="#">Interieur</a>
                <a href="#">Exterieur</a>
            </div>

            <p>Mustertext...</p>
        </div>

Der Knackpunkt ist hier das DIV mit der id "nav-3". Wenn ich das außerhalb des DIVs "content" platziere funktioniert alles wie gewünscht, lässt sich auch in TV problemlos mappen, sieht aber halt nicht so aus, wie ich mir das vorstelle. Innerhalb des Contents funktionierts nicht, schon alleine beim Mapping bekomme ich eine Warnung. Vom Designer ist es leider so gewünscht, dass das Untermenü Level 3 zwischen Überschrift und Contenttext steht.

Mein TS sieht momentan so aus:

## Menu [Begin]
lib.mainMenu = HMENU
lib.mainMenu.entryLevel = 1
lib.mainMenu.wrap = <ul>|</ul>
lib.mainMenu.1 = TMENU
lib.mainMenu.1.NO {
  allWrap = <li>|</li>
}
  
lib.mainMenu.1.ACT = 1
lib.mainMenu.1.ACT {
  allWrap = <li>|</li>
  ATagParams = class="active"
}

#Submenu 1
lib.mainMenu.2.wrap = <div id="nav-2"><ul>|</ul></div>
lib.mainMenu.2 = TMENU
lib.mainMenu.2.expAll = 1
lib.mainMenu.2.NO {
  allWrap = <li>|</li>
}

lib.mainMenu.2.ACT = 1
lib.mainMenu.2.ACT {
  allWrap = <li>|</li>
  ATagParams = class="active"
}

##Submenu Level 3
lib.subMenu = HMENU
lib.subMenu.entryLevel = 3
lib.subMenu.1 = TMENU
lib.subMenu.1.NO {
  linkWrap = |
}

lib.subMenu.1.ACT = 1
lib.subMenu.1.ACT {
  linkWrap = |
  ATagParams = class="active"
}

## Menu [End]

(Bitte nicht über die entryLevel wundern, ich fange da während der Testphase bewußt erst auf 1 und nicht auf 0 an. 😉)

Leider bin ich in T3, TV und TS noch nicht wirklich der Crack und habe keine Ahnung, ob mein Anliegen überhaupt umsetzbar ist, und wenn ja wie.

Mag da jemand einem Newbie helfen?

Unbekannter Benutzer ·

Juhuuu! Ich habs doch tatsächlich selber hinbekommen. Geholfen hat mir dieses Snippet hier: http://expertinnen-web.de/2008-232/typo3-breadcrumb-menue-zwischenschieben/

Mein TS sieht nun so aus:

## Menu [Begin]
#entryLevel ändern auf 1 sobald Portalseite steht
lib.mainMenu = HMENU
lib.mainMenu.entryLevel = 1
lib.mainMenu.wrap = <ul>|</ul>
lib.mainMenu.1 = TMENU
lib.mainMenu.1.NO {
allWrap = <li>|</li>
}

lib.mainMenu.1.ACT = 1
lib.mainMenu.1.ACT {
allWrap = <li>|</li>
ATagParams = class="active"
}

#Submenu 1
lib.mainMenu.2.wrap = <div id="nav-2"><ul>|</ul></div>
lib.mainMenu.2 = TMENU
lib.mainMenu.2.expAll = 1
lib.mainMenu.2.NO {
allWrap = <li>|</li>
}

lib.mainMenu.2.ACT = 1
lib.mainMenu.2.ACT {
allWrap = <li>|</li>
ATagParams = class="active"
}


## Menu [Begin]
lib.subMenu = HMENU
lib.subMenu.entryLevel = 3
lib.subMenu.wrap = <div id="nav-3">|</div>
lib.subMenu.1 = TMENU
lib.subMenu.1.NO {
linkWrap = |
}

lib.subMenu.1.ACT = 1
lib.subMenu.1.ACT {
linkWrap = |
ATagParams = class="active"
}


lib.stdheader.10.1 = COA
lib.stdheader.10.1 {
20 = TEXT
20.current = 1
20.insertData = 1
20.fontTag = <h1>|</h1>
30 < lib.subMenu
}

Entscheidend ist der letzte Teil ab "lib.stdheader[...]".

Unbekannter Benutzer · · Beste Antwort

So, jetzt muss ichs doch nochmal hochholen...

Wie müsste ich denn mein TS erweitern, dass das ganze nur in einem bestimmten (existierenden) DIV-Container "container_content" passiert?

Ich habe nun das Problem, dass JEDE H1-Überschrift die ich irgendwo auf der Seite verwende das zusätzliche Untermenü angehängt bekommt. Egal in welchem DIV ich eine Überschrift verwende.