Zum Inhalt springen

GMENU: Grafiken abhängig von Seiten Layout Feld

Erstellt am 30. Januar 2008 · 4 Antworten · letzte Antwort am 31. Januar 2008

Tags: Frage

sopinon ·

Hi all,

Wie könnte ich meinem Menu beibringen, dass er die Menüeinträge (Grafiken) welche auf Seiten verlinken bei welchen das Layout Feld > 0 ist, etwas zusätzliches anzeigt wird... z.B. eine Linie ("BOX") dazu oder ein Bild ("IMAGE") oder eine andere Hintergrundfarbe.

So sieht mein Menu momentan aus

#Hauptmenu
temp.t3_mainnav = HMENU
temp.t3_mainnav.entryLevel = 0
temp.t3_mainnav.1 = GMENU
temp.t3_mainnav.1.NO {
	XY = [30.w]+30, 28
    	backColor = #FFFFFF

	15 = BOX
	15.color = #CCCCCC
	15.dimensions = 0,0,[30.w]+30,28
	
	# Linie oben unten mitte
	16 = BOX
	16.color = #FFFFFF
	16.dimensions = 0,0,[30.w]+30,1
	17 = BOX
	17.color = #FFFFFF
	17.dimensions = 0,27,[30.w]+30,1
	18 = BOX
	18.color = #FFFFFF
	18.dimensions = [30.w]+29,0,1,28
	
	#Title
	30 = TEXT
	30.text.case = upper
	30.text.field = title
	30.offset = 0,18
	30.align = center
	30.fontColor = #757575
	30.fontSize = 10
	30.fontFile = fileadmin/ttf/verdana.TTF
}
temp.t3_mainnav.1.RO < temp.t3_mainnav.1.NO
temp.t3_mainnav.1.RO = 1
temp.t3_mainnav.1.RO {
	15.color = #AAAAAA
	30.fontColor = #FFFFFF
}
temp.t3_mainnav.1.ACT < temp.t3_mainnav.1.NO
temp.t3_mainnav.1.ACT = 1
temp.t3_mainnav.1.ACT {
	15.color = #AAAAAA
	30.fontColor = #FFFFFF
	17 >
}
brokemeister ·

Hallo!

Du hast eigentlich die Frage schon in deinem Quellcode:

...
30.text.case = upper
30.text.field = title
...

Du kannst statt title das Layout-feld nehmen und beispiele für die Anzeige > 0 gibt es auch reichlich im Forum/Google. Ansonsten einfach mal in die Typoscript-Referenz schauen...

Malte

sopinon ·
brokemeister schrieb

Du kannst statt title das Layout-feld nehmen und beispiele für die Anzeige > 0 gibt es auch reichlich im Forum/Google. Ansonsten einfach mal in die Typoscript-Referenz schauen...

Hmmmm komme irgend wie nicht ans Ziel! Habe nun mal folgendes Versucht, jedoch ohne Erfolg:

19 = CASE
19 {
  key.field = layout 
  1 = BOX
  1 {
    color = #00FF00
    dimensions = 0,5,10,10
  }
  default = BOX
  default {
    color = #FF0000
    dimensions = 0,5,10,10
  }
}

Hast du mir evtl. einen Tipp, auf was ich achten Muss, wenn ich eine BOX abhängig vom Feld layout darstellen will?

brokemeister ·

Mit case würde ich es nicht machen...

Erst mal muss die Ausgabe allgemein funktionieren.

Im zweiten Schritt kannst du das Feld mit einem "if" überprüfen und leeren, wenn nichts da ist...

Hier die Bedingung:

default = BOX
default {
  color = #FF0000
  dimensions = 0,5,10,10
  (Hier fehlt glaube ich noch was).if.isTrue.dataWrap = {field:layout}
  }

Einfach mal in der Referenz schauen...

sopinon ·

Ha! So hats geklappt! Vielen Dank... Es hat nichts mehr gefehlt:

19 = BOX
19.color = #FF0000
19.dimensions = 0,5,10,10
19.if.isTrue.dataWrap = {field:layout}