Die erste Webseite - Mehrsprachig
Aus Contao Community Documentation
betrifft | |
---|---|
Contao Version | ab 2.9 |
Inhaltsverzeichnis
Einleitung
Diese Anleitung zeigt, wie man mit Contao eine mehrsprachige Webseite erstellt. Es wird hierfür ausschliesslich die Corefunktionalität verwendet.
Das Ziel dieser Anleitung ist:
- Das Erstellen einer Webseite in Deutsch und in Englisch. Webseiten-Besucher mit einem deutschen Browser sollen auf die deutsche Webseite geleitet werden; Besucher mit einem englischen Browser oder IRGENDEINEN anderessprachigen Browser sollen auf die englische Webseite geleitet werden.
In dieser Anleitung werden:
- 2 Seitenbäume erstellt: Eine für die deutsche Webseite, eine für die englische.
Voraussetzung
Diese Anleitung baut auf der Anleitung Die erste Webseite auf.
Vorbereitung
Bevor man mit der eigentlichen Arbeit beginnt, ist eine kleine "kosmetische Anpassung" erforderlich, welche die Übersichtlichkeit erhöht:
Aktuell sieht die Seitenstruktur so aus:
Nun bearbeitet man den Startpunkt der Webseite (bei dem erster Eintrag "My First Site" auf den Bleistift-Button klicken) und benennt ihn mit deutschen Bezeichnungen.
Anschliessend speichert und schliesst man. Nun sollte die Seitenstruktur so aussehen:
Funktionsbeschreibung
Aktuell existiert eine Webseite in Deutsch. Im Startpunkt der Webseite wurde im Abschnitt DNS-Einstellungen unter Sprache de für Deutsch und ein Haken bei Sprachen-Fallback gesetzt. Durch diese Einstellungen werden ALLE Besucher auf diese Seite geleitet, egal welche Sprache sie eingestellt haben.
Nun, was bedeuten diese Einstellungen?
Die im Feld Sprache gesetzte Sprache definiert, in welcher Sprache die Webseite verfasst ist. Wird die Webseite nun durch einen Besucher aufgerufen, liest Contao die Sprache des Browsers aus und vergleicht sie mit der im Feld Sprache gesetzten Sprache. Stimmen die Sprachen überein, wird diese Webseite ausgegeben. Stimmt sie nicht überein, erhält der Besucher einen Fehlermeldung 404 - Seite nicht gefunden.
Hier kommt jetzt die Einstellung Sprachen-Fallback ins Spiel: Wird bei dieser Einstellung ein Haken gesetzt, wird diese Seite ausgegeben, sollte keine der verfügbaren Webseiten in der Sprache des Benutzers vorhanden sein. Somit wird verhindert, dass der Besucher die Fehlermeldung 404 - Seite nicht vorhanden bekommt. Es sollte mindestens eine Sprache einer Webseite einen Fallback bekommen.
Legt man diese Erkenntnis nun auf die in der Einleitung aufgeführten Vorgabe um, bedeutet dies:
- Man benötigt eine Webseite in Deutsch (ohne Fallback)
- Man benötigt eine Webseite in Englisch (mit Fallback)
Anpassen der existierenden Seite
Da die deutsche Seite ja schon existiert, besteht die einzige Aufgabe bei dieser nur darin, die richtigen Spracheinstellungen zu setzen. Dazu bearbeitet man wieder den Startpunkt der Webseite und setzt beim Abschnitt DNS-Einstellungen die Sprache auf de (sollte schon gesetzt sein) und entfernt den Haken bei Sprachen-Fallback. Anschliessend speichert und schliesst man.
Erstellen der neuen Seite
Die englische Seite muss komplett neu erstellt werden. Im Prinzip funktioniert dies genau gleich wie bei der deutschen Seite. Es muss nur auf die richtige "Verschachtelung" geachtet werden. Der Startpunkt der englischen Seite muss UNTERHALB der existierenden Seite eingefügt werden, NICHT INNERHALB. Die einzelnen Seiten der englischen Seite müssen INNERHALB des englischen Startpunktes sein.
Da hier immer wieder Fehler gemacht werden, nochmal die grafische Darstellung:
Seitenstruktur beider Seiten aufgeklappt:
Seitenstruktur beider Seiten (Startpunkte zugeklappt):
Und noch einmal mit Textdarstellung:
- Startpunkt deutsche Webseite ---- Startseite ---- Über Mich ---- Meine Eltern -------- Mein Vater -------- Meine Mutter ---- Impressum / Kontakt - Startpunkt englische Webseite ---- Home ---- About Me ---- My Parents -------- My Father -------- My Mother ---- Imprint / Contact
Im Startpunkt der englischen Webseite muss im Abschnitt DNS-Einstellungen bei Sprache en und ein Haken bei Sprachen-Fallback gesetzt werden. Anschliessend speichert und schliesst man.
Artikel
Abschliessend müssen wie in der deutschen Seite auch die Artikel in der englischen Seite erstellt werden.
Ergebnis
Alle Aufgaben wurden erfüllt. Ruft man nun die Startseite mit einem deutschen Browser auf, kommt die deutsche Webseite.
Ruft man die Startseite mit einem englischen Browser oder einen Browser in irgendeiner anderen Sprache auf, wird die englische Webseite ausgegeben.