Benutzer-Werkzeuge

Webseiten-Werkzeuge


typo3:templating:marker-subparts

Dies ist eine alte Version des Dokuments!


Marker und Subparts

Marker und Subparts werden stets mit 3 Rautenzeichen eingeleitet und beendet. Die Großschreibung des Bezeichners ist keine zwingende TYPO3-Vorgabe, wird aber der Übersicht und Einheitlichkeit halber empfohlen. Der Name des Bezeichners ist frei wählbar. Subparts können in HTML-Kommentare gesetzt werden; Marker nicht. Die oft gesehenen Angaben begin und end dient nur der Übersicht und wird nicht von TYPO3 ausgelesen.

<!-- Inhalt der HMTL-Vorlage -->
...
<div id="logo">###LOGO###</div>

<!-- ###NAVIGATION### begin -->
<ul id=“navigation“>
	<li><a href=“#“>Home</a></li>
	...
</ul>
<!-- ###NAVIGATION### end -->
...

Bei Markern wird der Inhalt an die gewählte Stelle eingefügt. Bei Subparts wird der in der Vorlage dazwischenliegende Inhalt ersetzt. Auf diese Weise kann ein HTML-Template zu Layoutzwecken mit Beispiel-Inhalt gefüllt werden, der mit Subparts umschlossen wird und von TYPO3 ersetzt werden kann.

Im PAGE-Objekt wird ein TEMPLATE-Objekt erzeugt, dem die HTML-Vorlage zugewiesen wird. Marker und Subparts werden angesprochen und mit dem gewünschten Inhalt ersetzt:

page.10 = TEMPLATE
page.10 {
  template = FILE
  template.file = fileadmin/vorlage.html
  marks.LOGO = IMAGE
  marks.LOGO {
    ...
  }
  subparts.NAVIGATION = HMENU
  subparts.NAVIGATION {
    ...
  }
}

Marker und workOnSubpart

Durch workOnSubpart = DOKUMENT wird nur der Teil zwischen den beiden Subpart-Bezeichnern als Vorlage verwendet. Der Rest der Template-Vorlage (<head> <body>, <title> <meta> etc.) wird ausgeschlossen. Wichtig, da diese Elemente von TYPO3 immer selbst in den Quellcode der Seite eingefügt werden und über weiteres Typoscript angepasst werden können!

<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>Seitentitel</title>
</head>
<body>
  <!-- ###DOKUMENT### begin -->
  <div>###IMAGE###</div>
  <div>###CONTENT###</div>
  <div>###FOOTER###</div>
  <!-- ###DOKUMENT### end -->
</body>
page.10 = TEMPLATE
page.10 {
  template = FILE
  template.file = fileadmin/vorlage.html
  workOnSubpart = DOKUMENT
 
  marks {
    HEADER = IMAGE
    HEADER {
      ...
    }
    CONTENT < styles.content.get
    FOOTER = TEXT
    FOOTER {
     ...
    }
  }
}
typo3/templating/marker-subparts.1388253952.txt.gz · Zuletzt geändert: (Externe Bearbeitung)