Skip to main content

H1 erzwingen

H1 als Seitentitel ausgeben und H2 als Defaultwert definieren.

Damit eine Internetpräsenz etwas suchmaschinenfreundlicher wird, soll auf allen Seiten die Überschrift 1. Ordnung, also H1, das erste Inhaltselement sein. In diesem Beispiel wird damit der Seitentitel ausgegeben werden. Alle Folgeüberschriften für einzelne Inhaltselemente sollen - soweit nicht anders definiert - als Überschrift 2. Ordnung angezeigt werden.

Seitentitel als H1 ausgeben

Definieren Sie zunächst einen Marker in Ihrer HTML-Vorlage, und zwar oberhalb des Markers für den Inhalt:

###PAGE_TITLE### 
###INHALT### 

Diesen Marker weisen Sie nun über das TS-Template der Rootseite zu und kopieren ihn.

marks.PAGE_TITLE < lib.page_title 

Anschließend erstellen Sie das TS für lib.page_title wie folgt und weisen eine CSS-Klasse zu, die im Stylesheet entsprechend definiert wird:

# Default Titel der Seite als h1 ausgeben 
lib.page_title = TEXT
lib.page_title {
 field = title
 wrap = <h1>|</h1>
} 

Überschriften der Inhaltselemente als H2 ausgeben

Damit nun die Überschrift des ersten Inhaltselements als H2 ausgegeben wird, setzen Sie folgende Zeile ins TS-Template der Root-Seite und zwar in die Konstanten:

#Default Überschrift H2 erzwingen
content.defaultHeaderType = 2 

Damit ist es nun nicht mehr möglich, H1 als Überschrift auszugeben, auch wenn der Redakteur H1 auswählt, wird H2 ausgegeben. Wählt der Redakteur allerdings eine untergeordnetet Überschrift wie H3 oder H4 aus, so kann er das ohne weiteres tun.

Seiten TS-Config

Weniger verwirrend für den Redakteur ist es, wenn er diesen Überschriftentyp gar nicht mehr auswählen kann. Also sollte er in der Auswahlbox am besten gar nicht angezeigt werden. Dies erreichen Sie, wenn in der TS-Konfiguration der Rootseite diese Auswahl auskommentiert oder gar nicht erst zur Verfügung gestestellt wird. Beispielsweise so, wie folgender Code-Abschnitt zeigt:

TCEFORM.tt_content {
  # Header ausblenden
  header_layout.removeItems = 1
  # Header mit anderem Namen versehen
  #header_layout.altLabels.0 = 1. Ebene H1
  header_layout.altLabels.2 = 2. Ebene H2
  header_layout.altLabels.3 = 3. Ebene H3
  header_layout.altLabels.4 = 4. Ebene H4
  header_layout.altLabels.5 = 5. Ebene H5 
}

RTE

Damit ein Redakteur auch über RTE keine Überschriften 1. Ordnung verwendet werden kann, muss dieser Überschriftstyp in der RTE-Konfiguration definitiv verboten werden.

RTE.default.hidePStyleItems = h1 

Da einige Erweiterungen in den HTML-Templates H1 verwenden, müssen diese Templates bearbeitet und H1 durch z. B. H2 ersetzt werden.