Zum Inhalt springen

Subheader per Marker anzeigen

Erstellt am 16. November 2012 · 5 Antworten · letzte Antwort am 18. November 2012

Tags: Frage

cmsfriend ·

Hallo Typo3-Freunde,

ich habe, wahrscheinlich total leicht, ein Problem den Subheader an anderer Stelle als im Contentbereich anzeigen zu lassen. Gemeint ist die "Unterüberschrift" beim Inhaltselement Überschrift.

Ich hatte gehofft, dass mit dem folgenden Script mein Problem gelöst wäre - einfach "title" durch "subheader" ersetzen und schon zeigt mir der Marker SUBHEADER die "Unterüberschrift" an. Dem ist leider nicht so 🙁
Könnt ihr mir da weiterhelfen?

10.marks.SUBHEADER = TEXT
10.marks.SUBHEADER.field = title
10.marks.SUBHEADER.wrap = <h2> | </h2>

Viele Grüße
cmsfriend

lavitto ·

Hi cmsfriend

Mit deinem Script greifst du nicht auf tt_content- (Inhaltselemente) sondern auf pages- (Seiten) Datensätze zu. Da du ja mehrere Inhaltselemente auf einer Seite hast (oder einfügen kannst), macht es vermutlich keinen Sinn den Subheader von einem Inhaltselement zu verwenden. Ich würde den Untertitel der Seite anzeigen (Seiteneigenschaften > Untertitel).

10.marks.SUBHEADER = TEXT
10.marks.SUBHEADER.field = subtitle
10.marks.SUBHEADER.wrap = <h2> | </h2>
Chrissli ·

Alternativ kannst du dir die Subheader bzw. Unterüberschriften der aktuellen Seite auch mit
CONTENT oder RECORDS
holen, für denn Fall dass du mehrere Subheader auf einer Seite benötigst oder du den ( vermutlich besseren ) Weg über die Seiteneigenschaften nicht gehen kannst / willst.

cmsfriend ·

Hi,

gelöst habe ich es jetzt so:

// Ausgabe Subheader
SUBHEADER = CONTENT
SUBHEADER {
table = tt_content
renderObj = TEXT
renderObj {
field = subheader
wrap = |
}
}

Ein kleines Problem bleibt dabei noch. Wenn ich die Ausgabe mit h2 wrappe, dann sieht es im Quelltext so aus:

<h2>Unterüberschrift</h2>
<h2></h2>
<h2></h2>

Wieso wird der h2 Tag noch 2x ausgegeben? Habe mir erst einmal geholfem, in dem ich das Tag ins Template geschrieben habe - finde ich allerdings suboptimal 🙁

Gruß
cmsfriend

lavitto ·

Hi cmsfriend

Vermutlich hat du noch zwei weitere Inhalte ohne Subheader auf der Seite, die ebenfalls dargestellt werden...

Entweder du setzt das Limit der Abfrage auf 1 oder du zeigst nur Inhaltselemente an, die einen Subheader haben. Ich würde das Limit setzen und den obersten Eintrag verwenden:

SUBHEADER = CONTENT
SUBHEADER {
  table = tt_content
  select {
    max = 1
    orderBy = sorting
  }  
  renderObj = TEXT
  renderObj {
    field = subheader
    wrap = |
  }
}
cmsfriend ·

Hi lavitto,

gleich mal umgesetz, funzt wunderbar 🙂

Danke!

Sollte mich in Zukunft doch mal eingehender mit Typoscript befassen.

Gruß
cmsfriend