Zum Inhalt springen

Layout unterscheidung und Spaltenwahl

Erstellt am 19. Juni 2005 · 1 Antwort · letzte Antwort am 21. Juli 2005

Tags: Templates & Layouts, Frage

Dustin Clouds ·

Hallo, habe ein ähnliches Problem wie in Unterschiedliche Layouts für CONTENT, RECHTS und LINKS beschrieben.

Ich möchte, je nach gewähltem Layout, verschiedene Spalten anzeigen lassen, d.h. Wenn ein Inhaltselement mit Layout Default verwendet wird soll nur die Spalte NORMAL angezeigt werden, bei Layout1 möchte ich beide Spalten anzeigen lassen.

Ich habe aus dem Tutorial-PDF von dieser Seite auf den Seiten 51 und 136 die Beispiele nachvollzogen und dabei kam dieser TS heraus:

# TEMPLATE für den BODY 
temp.mainTemplate = TEMPLATE
temp.mainTemplate {
    # Inhalte des Autoparsers dem BODY-Template zuweisen
    template =< plugin.tx_automaketemplate_pi1
    
    # Den Subpart DOKUMENT aus dem HTML-Template extrahieren
    workOnSubpart = DOKUMENT
    
    ## MENÜ ##
    ...

    ...

    ## CONTENT ##

     tt_content = CASE
     tt_content {
     key.field = header_layout
     default = COA
          default {
          10.marks.CONTENT_NORMAL = CONTENT
          10.marks.CONTENT_NORMAL {
              table = tt_content
              select.orderBy = sorting
              select.where = colPos = 0
              wrap = <div id="normal">|</div>
          }
          }
     }
}

Ich habe jtzt nur den default Zweig drin, um zu testen ob das wenigstens geht, klappt leider nicht.

Bin ich vielleicht gar ganz auf dem Holzweg? Kann man das vielleicht anders viel einfacher lösen, z.N. mit einem zweiten Template?

Die Idee ist die, dass manche Seiten zweispaltigen Text enthalten sollen, und manche nicht, unabhängig von der Position im Seitenbaum.

Hoffe das ist verständlich, im voraus vielen Dank für die Mühe.

Dustin Clouds

Benjamecho ·

Dafür brauchst Du eigentlich nur eine Layout Condition (siehe TSREF)
wie z.B.

[globalVar = TSFE:page|layout = 2]

innerhalb der Condition füllst Du dann Deine Marker mit dem Inhalt der Spalte oder lässt ihn leer.

Ben