Ich habe an dieser Stelle darüber geschrieben, warum ich überhaupt mit Contao arbeite und worin ich den Vorteil gegenüber anderen Content Management Systemen sehe. Während ich den Beitrag zusammengefasst habe, sind mir etliche Funktionen eingefallen, die mich zu Beginn überhaupt davon überzeugt haben, Contao zu nutzen. Deshalb habe ich einen eigenen Beitrag daraus gemacht.

Ich habe an dieser Stelle darüber geschrieben, warum ich überhaupt mit Contao arbeite und worin ich den Vorteil gegenüber anderen Content Management Systemen sehe. Während ich den Beitrag zusammengefasst habe, sind mir etliche Funktionen eingefallen, die mich zu Beginn überhaupt davon überzeugt haben, Contao zu nutzen. Deshalb habe ich einen eigenen Beitrag daraus gemacht.

Contao Funktionen


Die Benutzerverwaltung

Eine der größten Stärken von Contao sehe ich in der Benutzerverwaltung.

Damit eine Website selbstständig gepflegt werden kann, lege ich nach Abschluss eines Projektes verschiedene Benutzergruppen an. Diese werden dann dem Kunden und deren Mitarbeitern zugeteilt, so dass jeder seine eigenen Login-Daten bekommt.

Durch die Benutzerverwaltung kann man ganz gezielt entscheiden, was ein Mitarbeiter sehen soll und was nicht.

Es wird gemeinsam im Voraus entschieden, welche Bereiche bearbeitet werden sollen. Alles andere kann man ausblenden, um Verwirrung zu vermeiden.

Dadurch muss ein Benutzer nicht blind im Backend umhersuchen. Er sieht einfach nur das, was er auch bearbeiten soll. Nicht mehr und nicht weniger.

Benutzerverwaltung in Contao
Benutzerverwaltung in Contao

Darf er editieren, löschen oder anlegen? Alles kein Problem und einzeln konfigurierbar. Auch spezielle Verzeichnisse, Seitenstrukturen oder Inhaltselemente lassen sich ein- und ausblenden.

Entscheidet man sich später, zusätzliche Bereiche zur Bearbeitung freizugeben, kann man dies mit wenigen Klicks tun.

Ein wirklich starkes Tool, das für mich zu jedem abgeschlossenen Projekt gehört.

Das Backend personalisieren

Es kam auch schon vor, dass explizit einzelne Bereiche umgestaltet oder umbenannt werden mussten, damit sich ein Mitarbeiter leichter zurecht findet oder Funktionen mit weniger Aufwand, bedient werden konnten. Auch das ist kein Problem und updatefähig integrierbar.

Die Verwaltungsebene (Backend), lässt sich komplett auf die eigenen Bedürfnisse anpassen.

Genau deshalb gibt es für Kunden auch keine Schwierigkeiten, selbstständig mit Contao zu arbeiten. So bekommt man einen ganz eigenen Look!

Contao ist Schnell und zuverlässig

Und das merkt man erst, wenn man mal mit anderen CMS gearbeitet hat. Contao ist wirklich schnell und auch viele Zugriffe auf eine Datenbank stellen kein Problem dar. Im Backend lädt alles wunderbar flüssig und man hat das Gefühl, dass alles, was integriert wurde, auch seinen Sinn hat. Es ist keineswegs mit Funktionen zugemüllt oder verstaubt.

Ich habe noch nie mit drastischen Sicherheitslücken zu tun gehabt. Und wenn ich davon gelesen habe, wurden sie immer schnell kommuniziert und mit einem Update behoben.

Das System harmoniert auch sehr gut mit seinen internen Funktionen. Wenn man diese nutzt, kann man davon ausgehen, dass sie auch zuverlässig funktionieren.

Contao bietet schon von Haus aus viele nützliche Module an

Ohne, dass man Erweiterungen installieren muss, sind in Contao schon von Beginn an Funktionen integriert, die das Arbeiten wesentlich beschleunigen und genau die Wünsche erfüllen, die viele Kunden haben.

Um Einige zu nennen, die ich oft verwende:

  • Ein Modul zum Verwalten und Verschicken von Newslettern: Ein Contao Newsletter Template erstellen
  • Ein integriertes Kalendermodul
  • Ein News/Blogmodul um regelmäßig Beiträge zu veröffentlichen
  • Ein Formulargenerator für das einfache Erstellen und Versschicken von unterschiedlichsten Formularen und Suchfeldern
  • Eine große Benutzer- und Rechteverwaltung
  • Suchfunktion für das Frontend
  • Verschiedene Navigationsmenüs (Hauptnavigationen, Sitemaps, Navigationspfad, Artikelnavigation, Buchnavigation)
  • Simple Verwendung von Akkordeons oder Slidern
  • Einfaches erstellen von Galerien

Es gibt noch viele mehr…

Und werden einzelne Erweiterungen nicht benötigt, kann man diese in den Einstellungen ganz einfach deaktivieren und sie werden auch nicht mehr im Backend angezeigt bzw. geladen.

Das Arbeiten mit Templates

Contao Templates sind der Antrieb eines jeden Elements, das man auf der Seite sieht.
Habe ich zum Beispiel 10 Seiten auf denen immer das selbe Suchfeld zu sehen ist, kann ich dafür das gleiche Template verwenden. Sobald eine zusätzliche Funktion im Suchfeld integriert werden soll, muss ich dafür nur das eine Template bearbeiten, sehe die Änderungen aber auf allen 10 Seiten.
Eine wirklich starke Funktion, die logisches Arbeiten unheimlich beschleunigt.

Seitennummerierung Template Contao
Beispiel eines Contao Templates einer Seitennummerierung/Pagination

Seitdem viele Projekte immer spezieller werden und Kundenwünsche spezifischer, habe ich gemerkt wie viel Power es hat, Templates zu verändern und sie zu kombinieren.

Templates sind der grundlegende Baustein eines jeden Moduls und sobald man diese einmal beherrscht, stehen einem alle Wege offen.
Das Tolle dabei ist, dass es wirklich für alles, was man bearbeiten möchte oder auf der Seite sieht, ein zugehöriges Template gibt. Dadurch kann ich immer wieder völlig neue Webseiten gestalten, die aber mit dem gleichen Grundgerüst laufen.

Dazu sollte ich vielleicht noch sagen, dass ich keine großen PHP-Kentnisse besitze. Aber auch ohne viel PHP-Wissen findet man sich gut zurecht.

Die Modularität von Contao

In Contao kann man Module wie in einem Baukastenprinzip zusammensetzen. Dabei haben sie mehrere Möglichkeiten, miteinander zu funktionieren.

Auch wenn auf der Seite viele Bereiche sehr unterschiedlich aussehen, können sie im Hintergrund doch zum gleichen Baustein gehören, der über Schnittstellen mit anderen Modulen interagiert.
Das Schöne dabei ist, und genau deshalb habe ich mich als gelernter Web-Designer mit Contao so wohl gefühlt, dass es letztendlich auf die Gestaltung im Frontend ankommt, die jede Seite individuell werden lässt.
Mit Hilfe von CSS sind einem dabei keine Grenzen gesetzt.

Contao CSS

Man kann intern über das Contao-Framework Stylesheets anlegen und bearbeiten oder aber externe CSS/SCSS Dokumente einbinden, die man dann mit seinem bevorzugten Code-Editor, bearbeitet.

Das Arbeiten mit Insert-Tags

Insert-Tags sind ein schlichter und einfacher Weg, die Stärken von Contao auszuspielen.

Sie sind Platzhalter, die man in Form von {…} einfügt und die beim laden einer Seite durch bestimmte Inhalte ersetzt werden. Man kann sie fast überall in Contao einsetzen, was sie sehr mächtig macht.

Merke: Alle Insert-Tags haben zwei geschweifte Klammern am Anfang und Ende. Da sie in den folgenden Beispielen sonst immer durch Inhalte Ersetzt werden würde, habe ich sie mit nur einer {} dargestellt.

Möchte ich zum Beispiel den Titel eines Newsbeitrags irgendwo auf der Seite in einem Artikel integrieren, könnte ich diesen von Hand eintippen oder aber folgenden Insert-Tag verwenden:

{news_title::12}

Das hat den Vorteil, dass wenn sich der Titel eines Tags ändern sollte, er sich auch überall dort ändert, wo ich den Insert-Tag verwendet habe. Und das passiert ganz automatisch.

Dabei ist die ID (Zahl), die man zusammen mit dem Insert-Tag verwendet, variabel. So hat jedes Inhaltselement auf der Seite seine einzigartige Erkennung, auch wenn sich der Inhalt irgendwann ändert.

Ein weiteres Beispiel ist das einfache Integrieren von bestehenden Artikeln auf einer Seite. Möchte ich zum Beispiel einen Artikel mit einer Slideshow an anderer Stelle nochmal einbinden, kann ich dafür eine einzige Zeile verwenden:

{insert_article::*}

Das * wird mit der ID oder dem alias des Artikels ersetzt.

Es lassen sich auch komplette Benutzernamen, Titel oder URLs abfragen und ausgeben:

Hallo {user::firstname}!

Schön, dass du dich auf der Seite {page::title} eingeloggt hast.  
Falls du fragen zu einem meiner {link_open::12}Angebote{link_close} hast, kasst du gerne über folgendes Formular Kontakt zu mir aufnehmen:
{insert_form::2}

Heute ist der {date}, ein schöner Tag.

Hat man einmal mit Insert-Tags gearbeitet, kann man gar nicht mehr ohne.

Eine Liste mit allen zu Verfügung stehenden Insert-Tags findest du hier: Contao Insert Tags Und wem diese Liste nicht reicht, der hat auch die Möglichkeit sich eigene Insert-Tags zu erstellen.

Ganze Seiten kopieren und einfügen

Mit Contao kann man mühelos eine komplette Seitenstruktur mit etlichen Unterseiten kopieren, duplizieren und löschen. Und das ohne langes Warten.

Gerade wenn man mehrere Sprachen für eine Seite anlegen will, müssen viele Artikel und Inhalte kopiert und übersetzt werden. Dabei ist diese Funktion sehr hilfreich und wahnsinnig schnell.

Mehrsprachige Seiten bauen

In nur wenigen Minuten kann man mit Contao eine Seite zweisprachig aufbauen. Und das sogar ohne großartig Erweiterungen installieren zu müssen. Dabei wird die Sprache zur URL hinzugefügt, ein Seitenbaum dupliziert und die Fallback-Sprache ausgewählt.

Möchte man Module oder Inhalte anlegen, die in verschiedenen Sprachen integriert werden sollen, muss man diese nicht zweimal anlegen. Man kann dafür einfach Insert Tags verwenden:


{ifnlng::de}Your name{ifnlng}

{iflng::de}Dein Name{iflng}

In diesem Beispiel sehen deutsche Besucher nur den unteren Inhalt und alle anderen Länder den oberen Teil.

Eine starke Community

Das Contao Forum ist die zentrale Anlaufstelle wenn es um Fragen und Antworten geht. Für mich gab es seit Beginn noch kein Problem, dass hier nicht gelöst werden konnte.
Google eine Fragestellung + Contao dazu und ich bin mir fast sicher, dass darüber schon einmal in der Community gesprochen wurde.

Die Mietglieder antworten schnell, sind zuverlässig und haben einen netten Umgang miteinander.

Weiterführende Links

Warum ich überhaupt mit Contao arbeite, kannst du hier nachlesen: Warum ich mit Contao arbeite

Außerdem habe ich einen ausführlichen Beitrag darüber geschrieben, wie du deine Seite mit Hilfe von Contao für Suchmaschinen optimieren kannst: Suchmaschinenoptimierung in Contao. SEO Tipps Teil 1/2.

Starke Contao Funktionen, die mich überzeugt haben
  • Dieser Beitrag enthält eine Podcastfolge!

    Diese Kannst du direkt auf Patreon oder in einer Podcast App deiner Wahl anhören.

  • Dieser Beitrag enthält ein Video!

    Das Video wird dir auf Patreon freigeschalten.

Diesen Beitrag als Podcast hören

Contao Funktionen


Die Benutzerverwaltung

Eine der größten Stärken von Contao sehe ich in der Benutzerverwaltung.

Damit eine Website selbstständig gepflegt werden kann, lege ich nach Abschluss eines Projektes verschiedene Benutzergruppen an. Diese werden dann dem Kunden und deren Mitarbeitern zugeteilt, so dass jeder seine eigenen Login-Daten bekommt.

Durch die Benutzerverwaltung kann man ganz gezielt entscheiden, was ein Mitarbeiter sehen soll und was nicht.

Es wird gemeinsam im Voraus entschieden, welche Bereiche bearbeitet werden sollen. Alles andere kann man ausblenden, um Verwirrung zu vermeiden.

Dadurch muss ein Benutzer nicht blind im Backend umhersuchen. Er sieht einfach nur das, was er auch bearbeiten soll. Nicht mehr und nicht weniger.

Benutzerverwaltung in Contao
Benutzerverwaltung in Contao

Darf er editieren, löschen oder anlegen? Alles kein Problem und einzeln konfigurierbar. Auch spezielle Verzeichnisse, Seitenstrukturen oder Inhaltselemente lassen sich ein- und ausblenden.

Entscheidet man sich später, zusätzliche Bereiche zur Bearbeitung freizugeben, kann man dies mit wenigen Klicks tun.

Ein wirklich starkes Tool, das für mich zu jedem abgeschlossenen Projekt gehört.

Das Backend personalisieren

Es kam auch schon vor, dass explizit einzelne Bereiche umgestaltet oder umbenannt werden mussten, damit sich ein Mitarbeiter leichter zurecht findet oder Funktionen mit weniger Aufwand, bedient werden konnten. Auch das ist kein Problem und updatefähig integrierbar.

Die Verwaltungsebene (Backend), lässt sich komplett auf die eigenen Bedürfnisse anpassen.

Genau deshalb gibt es für Kunden auch keine Schwierigkeiten, selbstständig mit Contao zu arbeiten. So bekommt man einen ganz eigenen Look!

Contao ist Schnell und zuverlässig

Und das merkt man erst, wenn man mal mit anderen CMS gearbeitet hat. Contao ist wirklich schnell und auch viele Zugriffe auf eine Datenbank stellen kein Problem dar. Im Backend lädt alles wunderbar flüssig und man hat das Gefühl, dass alles, was integriert wurde, auch seinen Sinn hat. Es ist keineswegs mit Funktionen zugemüllt oder verstaubt.

Ich habe noch nie mit drastischen Sicherheitslücken zu tun gehabt. Und wenn ich davon gelesen habe, wurden sie immer schnell kommuniziert und mit einem Update behoben.

Das System harmoniert auch sehr gut mit seinen internen Funktionen. Wenn man diese nutzt, kann man davon ausgehen, dass sie auch zuverlässig funktionieren.

Contao bietet schon von Haus aus viele nützliche Module an

Ohne, dass man Erweiterungen installieren muss, sind in Contao schon von Beginn an Funktionen integriert, die das Arbeiten wesentlich beschleunigen und genau die Wünsche erfüllen, die viele Kunden haben.

Um Einige zu nennen, die ich oft verwende:

  • Ein Modul zum Verwalten und Verschicken von Newslettern: Ein Contao Newsletter Template erstellen
  • Ein integriertes Kalendermodul
  • Ein News/Blogmodul um regelmäßig Beiträge zu veröffentlichen
  • Ein Formulargenerator für das einfache Erstellen und Versschicken von unterschiedlichsten Formularen und Suchfeldern
  • Eine große Benutzer- und Rechteverwaltung
  • Suchfunktion für das Frontend
  • Verschiedene Navigationsmenüs (Hauptnavigationen, Sitemaps, Navigationspfad, Artikelnavigation, Buchnavigation)
  • Simple Verwendung von Akkordeons oder Slidern
  • Einfaches erstellen von Galerien

Es gibt noch viele mehr…

Und werden einzelne Erweiterungen nicht benötigt, kann man diese in den Einstellungen ganz einfach deaktivieren und sie werden auch nicht mehr im Backend angezeigt bzw. geladen.

Das Arbeiten mit Templates

Contao Templates sind der Antrieb eines jeden Elements, das man auf der Seite sieht.
Habe ich zum Beispiel 10 Seiten auf denen immer das selbe Suchfeld zu sehen ist, kann ich dafür das gleiche Template verwenden. Sobald eine zusätzliche Funktion im Suchfeld integriert werden soll, muss ich dafür nur das eine Template bearbeiten, sehe die Änderungen aber auf allen 10 Seiten.
Eine wirklich starke Funktion, die logisches Arbeiten unheimlich beschleunigt.

Seitennummerierung Template Contao
Beispiel eines Contao Templates einer Seitennummerierung/Pagination

Seitdem viele Projekte immer spezieller werden und Kundenwünsche spezifischer, habe ich gemerkt wie viel Power es hat, Templates zu verändern und sie zu kombinieren.

Templates sind der grundlegende Baustein eines jeden Moduls und sobald man diese einmal beherrscht, stehen einem alle Wege offen.
Das Tolle dabei ist, dass es wirklich für alles, was man bearbeiten möchte oder auf der Seite sieht, ein zugehöriges Template gibt. Dadurch kann ich immer wieder völlig neue Webseiten gestalten, die aber mit dem gleichen Grundgerüst laufen.

Dazu sollte ich vielleicht noch sagen, dass ich keine großen PHP-Kentnisse besitze. Aber auch ohne viel PHP-Wissen findet man sich gut zurecht.

Die Modularität von Contao

In Contao kann man Module wie in einem Baukastenprinzip zusammensetzen. Dabei haben sie mehrere Möglichkeiten, miteinander zu funktionieren.

Auch wenn auf der Seite viele Bereiche sehr unterschiedlich aussehen, können sie im Hintergrund doch zum gleichen Baustein gehören, der über Schnittstellen mit anderen Modulen interagiert.
Das Schöne dabei ist, und genau deshalb habe ich mich als gelernter Web-Designer mit Contao so wohl gefühlt, dass es letztendlich auf die Gestaltung im Frontend ankommt, die jede Seite individuell werden lässt.
Mit Hilfe von CSS sind einem dabei keine Grenzen gesetzt.

Contao CSS

Man kann intern über das Contao-Framework Stylesheets anlegen und bearbeiten oder aber externe CSS/SCSS Dokumente einbinden, die man dann mit seinem bevorzugten Code-Editor, bearbeitet.

Das Arbeiten mit Insert-Tags

Insert-Tags sind ein schlichter und einfacher Weg, die Stärken von Contao auszuspielen.

Sie sind Platzhalter, die man in Form von {…} einfügt und die beim laden einer Seite durch bestimmte Inhalte ersetzt werden. Man kann sie fast überall in Contao einsetzen, was sie sehr mächtig macht.

Merke: Alle Insert-Tags haben zwei geschweifte Klammern am Anfang und Ende. Da sie in den folgenden Beispielen sonst immer durch Inhalte Ersetzt werden würde, habe ich sie mit nur einer {} dargestellt.

Möchte ich zum Beispiel den Titel eines Newsbeitrags irgendwo auf der Seite in einem Artikel integrieren, könnte ich diesen von Hand eintippen oder aber folgenden Insert-Tag verwenden:

{news_title::12}

Das hat den Vorteil, dass wenn sich der Titel eines Tags ändern sollte, er sich auch überall dort ändert, wo ich den Insert-Tag verwendet habe. Und das passiert ganz automatisch.

Dabei ist die ID (Zahl), die man zusammen mit dem Insert-Tag verwendet, variabel. So hat jedes Inhaltselement auf der Seite seine einzigartige Erkennung, auch wenn sich der Inhalt irgendwann ändert.

Ein weiteres Beispiel ist das einfache Integrieren von bestehenden Artikeln auf einer Seite. Möchte ich zum Beispiel einen Artikel mit einer Slideshow an anderer Stelle nochmal einbinden, kann ich dafür eine einzige Zeile verwenden:

{insert_article::*}

Das * wird mit der ID oder dem alias des Artikels ersetzt.

Es lassen sich auch komplette Benutzernamen, Titel oder URLs abfragen und ausgeben:

Hallo {user::firstname}!

Schön, dass du dich auf der Seite {page::title} eingeloggt hast.  
Falls du fragen zu einem meiner {link_open::12}Angebote{link_close} hast, kasst du gerne über folgendes Formular Kontakt zu mir aufnehmen:
{insert_form::2}

Heute ist der {date}, ein schöner Tag.

Hat man einmal mit Insert-Tags gearbeitet, kann man gar nicht mehr ohne.

Eine Liste mit allen zu Verfügung stehenden Insert-Tags findest du hier: Contao Insert Tags Und wem diese Liste nicht reicht, der hat auch die Möglichkeit sich eigene Insert-Tags zu erstellen.

Ganze Seiten kopieren und einfügen

Mit Contao kann man mühelos eine komplette Seitenstruktur mit etlichen Unterseiten kopieren, duplizieren und löschen. Und das ohne langes Warten.

Gerade wenn man mehrere Sprachen für eine Seite anlegen will, müssen viele Artikel und Inhalte kopiert und übersetzt werden. Dabei ist diese Funktion sehr hilfreich und wahnsinnig schnell.

Mehrsprachige Seiten bauen

In nur wenigen Minuten kann man mit Contao eine Seite zweisprachig aufbauen. Und das sogar ohne großartig Erweiterungen installieren zu müssen. Dabei wird die Sprache zur URL hinzugefügt, ein Seitenbaum dupliziert und die Fallback-Sprache ausgewählt.

Möchte man Module oder Inhalte anlegen, die in verschiedenen Sprachen integriert werden sollen, muss man diese nicht zweimal anlegen. Man kann dafür einfach Insert Tags verwenden:


{ifnlng::de}Your name{ifnlng}

{iflng::de}Dein Name{iflng}

In diesem Beispiel sehen deutsche Besucher nur den unteren Inhalt und alle anderen Länder den oberen Teil.

Eine starke Community

Das Contao Forum ist die zentrale Anlaufstelle wenn es um Fragen und Antworten geht. Für mich gab es seit Beginn noch kein Problem, dass hier nicht gelöst werden konnte.
Google eine Fragestellung + Contao dazu und ich bin mir fast sicher, dass darüber schon einmal in der Community gesprochen wurde.

Die Mietglieder antworten schnell, sind zuverlässig und haben einen netten Umgang miteinander.

Weiterführende Links

Warum ich überhaupt mit Contao arbeite, kannst du hier nachlesen: Warum ich mit Contao arbeite

Außerdem habe ich einen ausführlichen Beitrag darüber geschrieben, wie du deine Seite mit Hilfe von Contao für Suchmaschinen optimieren kannst: Suchmaschinenoptimierung in Contao. SEO Tipps Teil 1/2.