Zum Inhalt springen

Einsatz unterschiedlicher Templates

Erstellt am 11. April 2008 · 8 Antworten · letzte Antwort am 20. Mai 2008

Tags: Templates & Layouts, Frage

not-a-name ·

Hallo miteinander!

Für ein Projekt möchte ich zwei unterschiedliche Templates einsetzen. Exemplarisch sieht die Website so aus:

- Hauptmenüpunkt 1
....Submenüpunkt 1.1
....Submenüpunkt 1.2
....Submenüpunkt 1.3
....Submenüpunkt 1.4

- Hauptmenüpunkt 2
....Submenüpunkt 2.1
....Submenüpunkt 2.2
usw.

Für den Hauptmenüpunkt wurde ein Template eingerichtet, welches im Contentbereich vier Boxen (mit entprechender Hintergrundfarbe, Rand,...) hat, deren Inhalt der Redakteur bearbeiten kann.
Vereinfacht:
<div class="box1">###CONTENT_BOX_01###</div>
<div class="box2">###CONTENT_BOX_02###</div>
<div class="box3">###CONTENT_BOX_03###</div>
<div class="box4">###CONTENT_BOX_04###</div>

Die Boxen enthalten Teaser, mit einem Link, der zum jeweiligen Submenüpunkt führen soll. Box1 geht über die gesamte Breite, in der nächsten Zeile folgt links Box2, rechts daneben Box3 und in der Zeile darunter dann wieder Box4 über die gesamte Breite.
Da ich bisher keine bessere Lösung gefunden habe (Vorschläge?), werden die Marker in TS folgendermaßen angesprochen:

    CONTENT_BOX_01 = CONTENT
    CONTENT_BOX_01 {
      table = tt_content
      select {
        where = colPos = 0
        orderBY = sorting
      }    
    }  
    
    CONTENT_BOX_02 = CONTENT
    CONTENT_BOX_02 {
      table = tt_content
      select {
        where = colPos = 1
        orderBY = sorting
      }         
    }  [usw.]

Wir haben dann die Möglichkeit, die Inhalte mit den Spalten "Links", "Normal", "Rechts", "Rand" anzusprechen. Wahrscheinlich nicht die optimale Lösung, aber besser ging's erst mal nicht.

Entsprechender TS-Code ist im root angelegt, alles funktioniert prima.
Nun sollen die Submenüpunkte ein anderes Template erhalten. Im dortigem Code gibt es nur einen DIV-Bereich (es sollen keine 4 Boxen gezeigt werden, sondern einfach ein Bereich, in dem die Inhalte stehen):
<div class="topic_content">###CONTENT_TOPIC###</div>

Wie baut man das nun in TS am besten auf?
Was sollte im Haupttemplate von root stehen, wie würden die Templates für die Hauptmenüpunkte und die Submenüpunkte aussehen, am besten so, dass sich derselbe TS-Scriptcode (Navigation, Footer,...) nicht in den Setup-Bereichen des jedes Mal wiederholt.

not-a-name ·

Vielen Dank für den Tipp!
Das war der Anstoß, den ich brauchte 8-)

Für alle, die es interessiert: Ins TS-Setup des Haupttemplates:

  #--------TEMPLATE: Hauptbereich mit 4 Boxen--------
  #Überschreibt eingestelltes Template Bereich mit nur einem CONTENT-Bereich
  [globalVar = TSFE:id=6, TSFE:id=7]
    page.10.template.file = fileadmin/template_main_startpages.html
  #BOX-1
    page.10.marks.CONTENT_BOX_01 = CONTENT
    page.10.marks.CONTENT_BOX_01.table = tt_content
    page.10.marks.CONTENT_BOX_01.select.where = colPos = 0
    page.10.marks.CONTENT_BOX_01.select.orderBY = sorting
  #BOX-1 ENDE
  #BOX-2
    page.10.marks.CONTENT_BOX_02 = CONTENT
    page.10.marks.CONTENT_BOX_02.table = tt_content
    page.10.marks.CONTENT_BOX_02.select.where = colPos = 1
    page.10.marks.CONTENT_BOX_02.select.orderBY = sorting
  #BOX-2 ENDE
  #BOX-3
    page.10.marks.CONTENT_BOX_03 = CONTENT
    page.10.marks.CONTENT_BOX_03.table = tt_content
    page.10.marks.CONTENT_BOX_03.select.where = colPos = 2
    page.10.marks.CONTENT_BOX_03.select.orderBY = sorting
  #BOX-3 ENDE
  #BOX-4
    page.10.marks.CONTENT_BOX_04 = CONTENT
    page.10.marks.CONTENT_BOX_04.table = tt_content
    page.10.marks.CONTENT_BOX_04.select.where = colPos = 3
    page.10.marks.CONTENT_BOX_04.select.orderBY = sorting
  #BOX-4 ENDE
  [global]
#--------TEMPLATE: Hauptbereich mit 4 Boxen--------

Worüber ich allerdings nach wie vor nicht richtig glücklich bin, ist der Ansatz, die Spalten "Links" - "Normal" - "Rechts" - "Rand" auf diese Art und Weise zweckzuentfremden. Spätestens wenn man dann 6 Boxen benötigt, muss man erst einmal im Typo3-PHP-Code umprogrammieren.
Außerdem hat man dadurch natürlich eine genau festgelegte Anzahl von Boxen. Wenn der Redakteur aber eine weniger oder eine mehr benötigt, kann er das nicht selbst anpassen...! #paralyzed#

Kennt jemand von euch einen besseren Ansatz?

not-a-name ·

Ups,

sorry - das hatte ich übersehen. Ich würde das auch schnell noch editieren, aber das erlaubt das Forum leider nicht nachträglich, wenn ein Artikel schon beantwortet wurde 😢
Da es bei mir nicht zu Fehlern kam (auch wenn sie korrekter Weise natürlich möglich sind) ist es mir nicht aufgefallen.

SLAng: Du hast nicht zufällig auch eine Antwort auf meine Frage, wie man so eine Boxenunterteilung professioneller und flexibler lösen könnte als zuvor beschrieben?

not-a-name ·

Hallo Daniel,

vielen Dank für den Tipp!
Dann werde ich mich beim nächsten Mal damit auseinandersetzen.
Irgendwie dachte ich, ein hochgezüchtetes CMS wie Typo3 hätte entsprechende Optionen vielleicht schon "On Board".

Unbekannter Benutzer ·

Oder bei solchen Teasern kann man auch immer Überlegen, ob man die nicht aus Informationen der Seiteneigenschaften (Mediafeld, Abstract, Untertitel etc. - Seitentyp Erweitert bietet da einiges) automatisch erzeugen kann...

Grüße
Christian

not-a-name ·

Hallo Kitsunet,

gibt es denn dafür konkrete Beispiele?
Ich habe mir schon damit beholfen, als Seitentyp HTML zu verwenden. Funktioniert auch bestens und ist sehr flexibel. Aber für eine Redakteur ohne ausreichende HTML-Kenntnisse ist so eine Lösung "ungenießbar".

Für ein anstehendes Projekt stellt sich das Problem erneut: Der Kunde wünscht sich viele Teaserboxen auf den Hauptseiten, mal sind es 4 Boxen pro Seite, mal 6 und das Ganze soll sich grafisch auch sehr ansprechend präsentieren (typisch DTP-Agentur, die sich nicht dafür interessiert, was für das Web gut bzw. praktikabel ist und am liebsten alles möglichst so haben möchte, wie man es für eine Broschüre machen würde: Durchgestylt bis zum Abwinken).