Contao-Summit 2026 in Leipzig 15. und 16. Oktober

Template vererben

Contao erlaubt das Vererben von Templates. Dabei wird ein Template nicht komplett überschrieben, sondern nur gezielt einzelne Teilbereiche (Blöcke) angepasst.

Blöcke anpassen

Zur Gliederung umschließen viele Templates ihre Inhalte bereits in $this->block('name-des-blocks') und $this->endblock() Ausdrücke. Nur Inhalte, die in solchen Blöcken liegen, können angepasst werden.

Zunächst muss das Basis-Template mittels $this->extend('name-des-templates') angegeben werden. Anzupassende Blöcke können dann, wie im originalen Template, durch Einschließen in $this->block('name-des-blocks') und $this->endblock() angegeben und ihre Inhalte überschrieben werden.

Mittels $this->parent() lässt sich der originale Inhalt des Blocks ausgeben.

Beispiele

Das Template fe_page.html5 ist in mehrere Blöcke aufgeteilt (u. a. head, meta, body, footer). Wir möchten lediglich eine weitere Meta-Angabe hinzufügen – dazu schreiben wir unser Template wie folgt:

<?php $this->extend('fe_page'); ?>

<?php $this->block('meta'); ?>
  <?php $this->parent(); ?>
  <meta name="author" content="Max Muster">
<?php $this->endblock(); ?>

Möchtest du am TinyMCE Anpassungen vornehmen, sollten nur die entsprechende Blöcke überschrieben werden. Um zu ermitteln, welche Blöcke dir zur Verfügung stehen, siehst du dir am besten das Originaltemplate be_tinyMCE.html5 an.

Mit folgender Anpassung wird bspw. die Formatierung vom Text vor dem Einfügen entfernt.

<?php $this->extend('be_tinyMCE'); ?>

<?php $this->block('custom'); ?>
  paste_as_text: true,
<?php $this->endblock(); ?>