Am 14. September 2017 haben wir eine überarbeitete Fassung unserer Datenschutzrichtlinie veröffentlicht. Wenn Sie video2brain.com weiterhin nutzen, erklären Sie sich mit diesem überarbeiteten Dokument einverstanden. Bitte lesen Sie es deshalb sorgfältig durch.

TYPO3 CMS 7 Grundkurs 2: Erweitern und anpassen

Sprachmenü

LinkedIn Learning kostenlos und unverbindlich testen!

Jetzt testen Alle Abonnements anzeigen
Werden mehrere Sprachen innerhalb eines gemeinsamen Seitenbaums genutzt, sind Verlinkungen zwischen den Sprachvarianten möglich. Mittels automatisch generierter Sprachmenüs ist der Besucher einer Website stets über die verfügbaren Sprachen informiert und kann unmittelbar zur gewünschten Seite wechseln.

Transkript

Für den Wechsel zwischen verschiedenen Sprachvarianten einer Website empfiehlt sich da Einsatz einer spezialiserten Sprachmenüs. Dies erlaubt es, nicht nur auf die Startseite der jeweils anderen Sprache zurückzugreifen, sondern auch auf der selben Seite zu bleiben und trotzdem zwischen den verschiedenen Sprachvarianten automatisch hin und her zu verlinken. Ein solches Menü wollen wir auf unserer Website oben rechts einfüdgen. Die Generierung des Menüs erfolgt per TypoScript. Wir begeben uns jetzt also in unser Template in den Setup-Bereich und fügen ein neues Element für unser Language-Menü ein. Es handelt sich hierbei um ein "HMENU" und die weiteren Konfigurationen wollen wir in einem Block zusammenfassen. Der Modus hierfür ist "language", so dass wir also "special" auf "language" setzen. Und zur Auswahl stehen die Sprachen "0" und "1". Auch dieses Menü finden Sie natürlich in der Dokumentation unter "References" "TypoScript Reference" "HMENU". Hier suchen wir dann "special = language", und dort ist auch unsere Beschreibung zufinden. Hier ist eingegeben, dass "value" eine Liste von "sys_language_uids" enthält. Die Standardsprache hat hierbei entsprechend die ID "0". Durch das "HMENU" werden unsere Menüeinträge bereitgestellt. Jetzt müssen wir noch die Ausgabe konfigurieren. Wir verwenden hierzu, wie gewohnt, ein "TMENU". Und für dieses wollen wir als Erstes den Normalzustand konfigurieren. Normalerweise würden die IDs ausgegeben. Wir wollen hier allerdings dann die Sprachtitel konfigurieren. Wir können hier also "de" und "en" für unsere beiden Sprachen vergeben. Außerdem müssen wir noch ein Trennzeichen definieren. Dies soll nicht um die Titel, sondern außerhalb der Links gewrappt werden. Deswegen verwenden wir hier "stdWrap2" und verwenden ein "wrap". Als Trennzeichen wollen wir einen Senkrechtstrich verwenden, da wir hier Senkrechtstriche für die TypoScript-Notation im Einsatz haben, verwenden wir hier entsprechend einfach eine HTML-Entsprechung. Zwischen den Elementen soll so ein Trennstrich erscheinen. Beim letzten Element allerdings wollen wir auf das Trennzeichen verzichten. Deswegen geben wir mit diesem Spezialtrenner an, das für das erste und alle mittleren Elemente diese Konfiguration gelten soll, und für das letzte Element entsprechend die hintere Konfiguration, also keinen Trenner. Für einen ersten Blick auf unser Sprachmenü müssen wir dies noch anderes Template übergeben. Wir ergänzen hier unten als Variable für unser Fluid-Template "languagemenu" und fügen dort unser "lib.languagemenu" aus TypoScript ein. Jetzt fehlt noch eine Ergänzung in der Template-Datei. Das Menü oben rechts ist bei uns Teil des Layouts. Wir haben hier die Links zum Impressum sowie für unser DropDown und können einen weiteren Aufzählungspunkt für unser Sprachmenü ergänzen. Wir fügen hier "languagemenu" ein und müssen dort auch noch einen "f:format.raw" ergänzen, da HTML-Sonderzeichen nicht ersetzt werden sollen. Unserem "li" geben wir außerdem noch eine "id" namens "languagemenu" mit auf den Weg. Betrachten wir das Ergebnis im Fornt-End. Unser Menü enthält hier nun Links für die aktuelle Seite, und zwar auf die Sprache "0" beziehungsweise auf die Sprache "1". Es fehlt jetzt allerdings noch eine Markierung, welche Sprache denn derzeit aktiv ist. Auch dies wollen wir ergänzen. In unserem TypoScript für das "languagemenu" können wir hier dann jetzt noch den ActiveState ergänzen. Dieser ist eine Kopie des Normalstatus. Wir setzen "ACT" noch auf "1" und verändern die Ausgabe. Beispielsweise, es ist möglich, dass wir unseren aktiven Eintrag nicht verlinken wollen. Hierfür existiert die Option "doNotLinkIt". Und außerdem können wir noch einen "linkWrap" hinzufügen. Verwenden wir mal ein span-Tagg, um eine "class" zu ergänzen. Ein Pipe zeichnen ( | ) und einschließen das span-Tagg. Ein weiterer Menüzustand ist übrigens auch noch, dass eine Seite in einer bestimmten Sprache gar nicht zur Verfügung steht. Auch diesen Fall wollen wir gleich mitergänzen. In der Dokumentation ist hier angegeben, dass dies dann ein USERDEF-Zustand ist, der speziell für das "languagemenu" gilt. Wir können hier also für USERDEF1 eine Kopie von Active machen und eine abweichende Konfiguration ergänzen. Eigentlich wollen wir an dieser Stelle nur einen anderen "linkWrap" setzen. Die Klasse könnte zum Beispiel sein "notAvailable". Speichern wir ab und betrachten wir das Ergebnis. Sie sehen hier oben, unsere aktive Sprache ist aktuell Englisch, und ich kann auf die deutsche Variante rüberwechseln. Spannend wird es nun, wenn wir auf die Seite "B" wechseln, denn diese existiert nicht in englischer Sprache. Sie sehen hier, dass "en" nicht verlinkt ist, und dass diese Sprache durchgestrichen wurde. Bei der Seite "A" ist "en" vorhanden, und ein Link bei "B" ist dieser Eintrag entsprechend nicht vorhanden. Sie haben hier gesehen, wie komfortabel es mögliche ist, zwischen den verschiedenen Sprachen einer Seite hin und her zu wechseln, und bei der Verlinkung auch auf der selben Seite zu bleiben. Außerdem hat der Benutzer so jederzeit die Übersicht, ob eine Seite in einer bestimmten anderen Sprache zur Verfügung steht.

TYPO3 CMS 7 Grundkurs 2: Erweitern und anpassen

Profitieren Sie von den vielen Profitipps rund um den praktischen Einsatz des erfolgreichen Content Management Systems TYPO3!.

Derzeit sind keine Feedbacks vorhanden...
 
Software:
Exklusiv für Abo-Kunden
Erscheinungsdatum:02.08.2016

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!