Zum Inhalt springen

wenn contentRight leer ist anseres template wählen !! evt mit condition ??

Erstellt am 15. April 2006 · 6 Antworten · letzte Antwort am 19. April 2006

Tags: Frage

schwaiger ·

hallo ich habe ein problem...

ich habe ein zweispaltiges layout welches alles 1a geht...

gedoch wenn der user contentRight leer lässt soll das template switchen und ein einspaltiges ausgegeben werden...

ist dies möglich ???

auf die art [if empty = get.contentRight] template = fileadmin/templates/zwei.html [global]

1000 dank u lg flo

Michaelh74 ·

Hallo,

vielleicht hilft Dir ja das weiter:

###### Default Content if empty ######

temp.inhalt = COA
temp.inhalt {
  10 < styles.content.getBorder
  10.stdWrap.ifEmpty.cObject = CONTENT
  10.stdWrap.ifEmpty.cObject {
    table = tt_content
    select {
      pidInList=33
      orderBy = sorting
      where = colPos=3
      languageField = sys_language_uid
    }
  }
}
marks.INHALT < temp.inhalt

Ist zwar nicht genau Deine Problemstellung, da hier wenn Spalte leer der Content einer anderen Seite genommen wird. Aber denke mal das könnte man leicht umbauen. Alternativ könnte man auch den Template Selector verwenden. Damit kann man dann auf jeder Seite einfach z.B. zwischen 1 & 2 spaltigen Layouts wechseln.

Gruß
Michael

schwaiger ·

danke schonmal..

bei mir müsste es dann ja so aussehen

wenn rechter content leer ist wrape um linken konten ein div.. (um die dann in css mit der breite anzugeben)..

aber mit ifempty kann ich ja nur den leeren inhalt abfrage und dann um diesem wrappen !!??

danke schonmal

Bebbi ·

Hallo

vor kurzem stand ich vor dem gleichen Problem. Ich hatte die gleiche Idee, konnte es aber nicht genau so lösen wie ich wollte.

Nun habe ich es so gelöst, dass ich 2 verschiedene Templates zur Auswahl gebe. Beim Erstellen einer Seite kann der User aus Layout 1 (mit Spalte) und Layout 2 (ohne Spalte) wählen. Die Konfiguration dafür sieht folgenermassen aus:

Ins Setup:

page = PAGE
page.typeNum = 0
page.includeCSS{
file1 = fileadmin/templates/template1.css
file2 = fileadmin/templates/jcb.css
}
# Bei Layout1 ein anderes Layout wählen
[globalVar=TSFE:page|layout=1]
page.includeCSS{
file1 = fileadmin/templates/template2.css
file2 = fileadmin/templates/jcb.css
}
[global]

--> Je nach Auswahl im Feld "Layout" wird ein anderes Template gewählt.

Der Eintrag in der TSConfig sieht so aus:

TCEFORM.pages.layout{
altLabels.0 = mit Infokasten
altLabels.1 = ohne Infokasten
removeItems = 2,3,4,5 
}

--> Damit gebe ich die Auswahl für das Feld "Layout" vor und lösche die nicht benötigte Auswahl.

Viel Erfolg

Bebbi

Michaelh74 ·

Hallo Bebbi,

diese Lösung geht natürlich auch - auch wenn ich die Template Selector Variante für den Redakteur etwas schöner finde. Da hat er einfach ein Bild mit 2 u. ein mit einer Spalte u. muss das nur anklicken...

Aber wie gesagt anscheinend sind dies die einzigen wege (abgesehen natürlich noch von Templavoila).

Gruß
Michael

schwaiger ·

wollte es eben auch über den template selector machen...

aber irgendwie will er hier nicht gehen...

kann sein das er mit der typo3 v 4 nicht geht ???

danke an alle u lg flo