Zum Inhalt springen

Einen bestimmten Menüpunkt hervorheben

Erstellt am 6. Juli 2006 · 11 Antworten · letzte Antwort am 7. Juni 2008

Tags: Frage

MuT ·

Moin,
wie kann ich denn im Menü einen ganz bestimmten Menüpunkt (z.B. den mit der Page-ID 17) zusätzlich formatieren - also auf ihn zugreifen?

Komme da glaube ich mit den Hierachien durcheinander - oder mache andere blöde Denkfehler...

Zur Verdeutlichung:

Menu I
- p1
- p2
- p3
- p4

nun würde ich gerne P2 per Typoscript zusätzliche Formatierungen verpassen.

Hoffe, ihr wisst, was ich meine?!

Danke vorab und Gruß,
Daniel

just2b ·

Hallo Daniel,

ich schreibe gerade das manual zu meiner neusten Extension fertig, die sollte das dann konfortabel lösen, sofern du ndein Menü hauptsächlich mit CSS stylest

georg

MuT ·

Hallo Georg,
na dann bin ich ja mal gespannt :-)

Ja, ist eine css-gestylte Liste.

Mein Problem (das ich hier nur vereinfacht dargestellt habe) bleibt aber, wie ich auf einen bestimmten Menüpunkt zugreifen kann - kannst Du mir da einen Denkansatz geben?

Gruß und Dank,
Daniel

Michaelh74 ·

So z.B. per TS:

1 = TMENU
1.NO.allWrap = <div id="{elementUid}>|</div>
1.NO.subst_elementUid = 1

oder so

1 = TMENU
1.NO.allWrap = <li id="menuitem{field:uid}">|</li>
1.NO.allWrap.insertData = 1

damit kann man die Seiten Uid als Element ne class oder id mitgeben.

Danach lassen sich per CSS alle Menüpunkte indivuell formatieren.

Gruß
Michael

Unbekannter Benutzer ·

Mh... hört sich interessant an, aber:

Eigentlich werden listMenüs ja mit wrapItemAndSub gebaut... wird denn bei allWrap das Menü noch korrekt zusammen gesetzt? Bei wrapItemAndSub funktioniert {field:uid} nämlich nicht.

Edit:

Ich habs ausprobiert:
Mit allWrap werden listMenüs nicht korrekt zusammgebaut. Wenn man allWrap und wrapItemAndSub mischt kommt auch eine falsche Menüzusammenstellung heraus.

Gibt es eine möglichkeit die fieldUid auch in wrapItemAndSub zu verwenden?

Unbekannter Benutzer ·

Ich hab noch etwas daran herum gebastelt und habe es jetzt so gelöst:

NO {
	before {
		dataWrap = <li class="Second_NO" id="special_{field:uid}">|
	}
	wrapItemAndSub = |</li>
}

Da {field:uid} nicht in wrapItemAndSub funktioniert habe ich before.dataWrap ergänzt. Bedeutet das vor dem jeweiligen value ein dataWrap eingefügt wird. In diesem funktioniert {field:uid}
Vor {field:uid} muss zwingen special_ oder ein anderes Wort stehen, da id's und classen nicht mit einer Zehl beginnen dürfen. Nur {field:uid} kann man nicht ansprechen.
wrapItemAndSub schließt dann den geöffneten <li> wieder.
Jeder Listenpunkt bekommt so also eine eindeutige Nummer, die dann auch dementsprechend formatiert werden kann.

Das Menü wird natürlich korrekt zusammengebaut und ist w3c-Sicher

ArminB ·

moin,

ich würde eher über allWrap und eine if gehen.

allWrap = <span>|</span>
        allWrap.if.isTrue.field = media

Die if dann halt den eigenen Bedürfnissen anpassen, hier also mit equals auf id 17

Armin

just2b ·
SLAng schrieb

Mit allWrap werden listMenüs nicht korrekt zusammgebaut. Wenn man allWrap und wrapItemAndSub mischt kommt auch eine falsche Menüzusammenstellung heraus.

Gibt es eine möglichkeit die fieldUid auch in wrapItemAndSub zu verwenden?

ab 4.2. geht das auch mit wrapItemAndSub! patch ist von mir 😃

ansonsten mit allWrap aufmachen und mit wrapitemandsub zumachen, das ghet auch

georg

Unbekannter Benutzer ·

Das ist erfreulich, dass das ab 4.2 auch mit wrapItemAndSub geht... Bin leider noch nicht auf allen Domains soweit...
PHP 5 läuft mittlerweile und TYPO3 4.2 läuft auf einem Testsystem, da man soviel von Bugs gelesen hat. Allerdings habe ich noch keine festellen können.
Ich denke Radio Devil wird als erstes auf 4.2 umziehen

just2b ·
SLAng schrieb

Das ist erfreulich, dass das ab 4.2 auch mit wrapItemAndSub geht... Bin leider noch nicht auf allen Domains soweit...
PHP 5 läuft mittlerweile und TYPO3 4.2 läuft auf einem Testsystem, da man soviel von Bugs gelesen hat. Allerdings habe ich noch keine festellen können.
Ich denke Radio Devil wird als erstes auf 4.2 umziehen

OT aber ansonsten kommt nächste woche eine 4.2.1 raus, auf die würd ich dann auch gleich warten 😉