2 Stimmen

Einrichtung der Typoscript-Navigation

Ich bin neu in typo3 und muss eine Navigation einrichten. Ich habe bereits die Tutorials gefunden bei Zeitplan und ich habe die Demo-Navigation gebaut (Woche 2 im Tutorial).

Jetzt muss ich eine Navigation einrichten, die so aussehen muss:

Link 1 | Link 2 | Link 3 | Link 4

die Struktur der Rückseite ist die folgende:

Link 1
Link 2
Link 3 (shortcut to sub link 1)
    Sublink 1
    Sublink 2
Link 4

Das gesamte Menü funktioniert einwandfrei, wenn ich mich in dem durch Link 1, Link 2 und Link 4 bezeichneten Bereich befinde, aber es wird nichts angezeigt, wenn ich auf Link 3 klicke.

En Sublinks in einer sekundären Navigation angezeigt werden sollen

Hier ist das Typoskript, das ich in meiner Root ts-Vorlage habe (ich verwende TemplaVoila):

lib.field_topmenu = HMENU
lib.field_topmenu {
    special = directory
    special.value = {$idMain}
    entryLevel = 2
    1 = TMENU
    1.NO = 1
    1.wrap = <div id="menu"><ul> | </ul></div>
    1.NO.wrapItemAndSub = <li>|</li>
    1.ACT < .1.NO
    1.ACT.ATagParams = class='active'
    2 < .1
}

Wie ließe sich dies am besten erreichen?

5voto

konsolenfreddy Punkte 9444

Ich bin froh, dass Sie bei TYPO3 an Bord sind.

Soweit ich mich erinnern kann, gibt es keine Auswirkungen auf das Einstiegsniveau einer special = directory .

Das ist eine funktionierende Lösung:

lib.field_topmenu = HMENU
lib.field_topmenu {
    special = directory
    special.value = 1
    1 = TMENU
    1.NO = 1
    1.wrap = <ul> | </ul>
    1.NO.wrapItemAndSub = <li>|</li>
    1.ACT < .NO
    1.ACT.ATagParams = class='active'
    2 < .1
}

Sie sollten die id=menu da sie die Ebenen abwärts wiederholt wird und somit Ihr HTML ungültig wird

Hier ist eine Lösung, die wir normalerweise verwenden. Sie verwendet auch Untertitel usw. und fügt dem ersten und letzten Element Ihrer Navigationsliste spezielle Klassen hinzu:

lib.navi.one = HMENU
lib.navi.one {
    1 = TMENU
    1 {

        noBlur = 1
        wrap = <ul>|</ul>
        NO = 1
        NO {
            wrapItemAndSub = <li class="first">|</li> |*| <li>|</li> |*| <li class="last">|</li>
            altText = subtitle // title
            title = subtitle // title
        }
        CUR < .NO
        CUR.wrapItemAndSub = <li class="active first">|</li> |*| <li class="active">|</li> |*| <li class="active last">|</li>
        ACT < .CUR
    }
    2 < .1
    3 < .2
    4 < .2
}

können Sie es ganz einfach als Ausgangspunkt für Ihr Verzeichnis übernehmen (und die Stufen 3 und 4 weglassen):

lib.field_topmenu < lib.navi.one
lib.field_topmenu {
    special = directory
    special.value = {$idMain}
    3 >
    4 >
}

0voto

wmarx Punkte 27

ATagParams funktioniert nicht mit Verknüpfungen. Sie müssen die echten Seiten in den sys-Ordner legen, dann funktioniert es.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X