Mehrsprachigkeit

Damit Ihre Webseite Mehrsprachigkeit unterstützt, benötigen Sie die ChangeLanguage Extension.

Die ChangeLanguage Extension ist optional, Sie können auch auf diese Erweiterung verzichten, da Contao Mehrsprachigkeit von Haus aus unterstützt. Allerdings müssen Sie einige Dinge beachten. Bitte lesen Sie dazu den letzten Abschnitt.

Schritt 1 Tabellen für Sprachen und Datensätze

Catalog Manager Tabellen für Sprachen und Datensätze

Wir erstellen zwei Tabellen. Eines für die Datensätze und das andere für die Sprachen

Schritt 2 Tabellen verknüpfen

Catalog Manager Tabellen verknüpfen

Wir verknüpfen die Tabellen miteinander. Die Tabelle mit den Datensätzen, bekommt die Tabelle für die Sprachen als Elterntabelle zugewiesen und die Sprachen Tabelle bekommt die Datensatz Tabelle als Kind Tabelle.

Schritt 3 Eingabefeld für Sprachauswahl

Catalog Manager Eingabefeld für Sprachauswahl

Wir erstellen für die Sprachen Tabelle ein Feld Sprache. Das Eingabefeld kann von Typ Select-Menü sein. Dieser soll eine Auswahlliste von Sprachen zur Verfügung stellen. Die Sprachen sollen im ISO-kürzel hinterlegt werden.

Schritt 4 Hauptsprache auswählen

Hauptsprache auswählen

Wir verwenden die Sprachen Tabelle als Backend Modul und erstellen ein Datensatz als Hauptsprache und merken uns die ID.

Schritt 5 Auswahlliste mit Fallback Datensätzen erstellen

Auswahlliste mit Fallback Datensätzen erstellen

Wir erstellen für die Datensatz Tabelle ein Fallback Eingabefeld. Dabei handelt es sich um ein Select-Menü mit einer Datenbank Auswahlliste von allen Datensätzen. Bei Taxonomies/Filter filtern wir die Fallback Datensätze nach der Hauptsprache. Wir wählen das Feld Elternelement [pid] und den Operator Gleich aus. Die zugvorgemerkte ID übergeben wir in die Wert Spalte.

Schritt 6 Sprachwechsler Modul

Catalog Manager Sprachwechsler Modul

Als nächstes müssen wir das changelanguage Modul aktivieren. Dazu gehen wir zu den Datensätzen Tabelle Einstellungen und aktivieren Sprachwechsler Modul verwenden aus. Wir übergeben unser Fallback und das Sprachen Feld. Die Sprache beziehen wir aus der Eltern Tabelle.

Schritt 7 Einträge übersetzen

Catalog Manager Einträge übersetzen

Als letztes müssen wir auf der Detailseite der Datensätze die Einträge übersetzen. Dazu gehen wir zu der Seitenstruktur und wählen die Detailseite aus und aktivieren bei den Einstellungen Einträge übersetzen. Dort übergeben wir die Datensatz Tabelle.

Ohne ChangeLanguage Extension

Folgende Dinge müssen Sie beachten.

  • Ihr Katalog benötigt eine Sprachauswahl. Siehe Schritt 3 > Eingabefeld für Sprachauswahl.
  • Erstellen Sie eine Listenansicht. Diese Listenansicht gibt grundsätzlich alle Sprachen aus, um dieses Verhalten zuändern, benötigen Sie eine SQL-Abfrage.
  • Die Spracheinstellungen des aktiven Seitenbaums können wir mit dem { { page::language } } InsertTag auslesen.
  • Wir gehen in die Listenansicht Einstellungen und wählen bei der Filterung das Feld aus, in dem unsere Sprache gespeichert wird und gleichen die Datensätze mit dem oben genannten InsertTag ab.
  • Grundsätzlich benötigen Sie eine einzige Listenansicht für alle Sprachen. Alternativ können Sie auch "hardcoded" die Sprache Abfragen, in dem Sie statt einem InsertTag den Sprachkürzel verwenden z.B "de", "fr", "es" usw.

Nicht fündig geworden?

Hier finden Sie auch ein paar nützliche Informationen: