Die Extension Language Selection (sr_language_menu)

Das Einrichten der Extension Language Selection (sr_language_menu) ist mit ein paar kleinen Tücken verbunden, dafür gewinnt man den schönen Effekt, dass das Sprachmenü ein Nichtvorhandensein einer Übersetzung für die entsprechende Seite markiert (zum Beispiel durch eine ausgegraute Flagge). Sind alle Seiten der Website übersetzt, kann man auf die Extension verzichten und richtet den Sprachumschalter lieber per TypoScript ein. Z.B. so:

Hinweis: Diese Anleitung bezeiht sich auf eine veraltete Version der Extension. Bitte beachten Sie zum Thema diesen Beitrag.

temp.sprache = TEXT
temp.sprache {
  value = English
  typolink {
    parameter.data = TSFE:id
    additionalParams = &L=1
    addQueryString = 1
    addQueryString.method = GET
    ATagParams = class="gb"
  }
}
[globalVar = GP:L = 1]
sprache.value = Deutsch
sprache.typolink.additionalParams = &L=0
sprache.typolink.ATagParams = class="deutsch"
[end]
subparts.sprache < temp.sprache

Das ist hier aber nicht das Thema. Wir setzen für die Sprachumschaltung die Extension „Language Selection“ ein und folgen – wie sich das gehört – dem Manual. Folgende Fallstricke muss man aber bedenken:
Ist die default Sprache nicht englisch, dann muss man das dem Plugin explizit per TypoScript mitteilen:

plugin.tx_srlanguagemenu_pi1 {
  defaultLanguageISOCode = DE
  }

Weiterhin muss man bei Anlegen der Sprache im Feld
„Offizielle Sprache wählen (ISO-Kennung):“ die ensprechende Angabe für die Sprache machen. Das ist wichtig, damit das Plugin die Flagge zuordnen kann. Um die Flagge dann tatsächlich zu sehen, muss man sich einmal im TYPO3 Backend aus- und ggfl. wieder einloggen, Cache löschen allein genügt nicht.

Ein Fallstrick ist auch das Austauschen der Flaggen, wenn man nicht die anzeigen will, die das Plugin mitbringt. Es gibt die TypoScript Eigenschaft: „englishFlagFile“. Hier wird als Wert der Pfad zu irgendeiner Datei, die in einem bestimmten Verzeichnis liegt, erwartet. Das muss keineswegs die englische Flagge sein. Alle Flaggen, die angezeigt werden sollen, müssen als Dateinamen das Länderkürzel und die Dateiendung gif haben (en.gif, de.gif, ru.gif usw.) und müssen in diesem Verzeichnis liegen. Ausgegraute Flaggen, die angezeigt werden, wenn die Seite in der jeweiligen Sprache nicht existiert, haben immer den Dateinanmen xx_d.gif, also z.B. de_d.gif oder en_d.gif.

Hier das gesamte TypoScript einer Seite mit 4 Sprachen, default ist deutsch, die übrigen Sprachen haben die ids 1, 2 und 3. Angezeigt werden lediglich die Flaggen („defaultLayout = 0“), die Flagge der aktiven Sprache wird nicht verlinkt, die Flaggengrafiken liegen im Verzeichnis „layout“.

plugin.tx_srlanguagemenu_pi1 {
  defaultLanguageISOCode = DE
  languagesUidsList = 1,2,3
  defaultLayout = 0
  flag.CUR.stdWrap.wrap = <div class="CUR"> | </div> 
  flag.CUR.doNotLinkIt = 1 
  englishFlagFile = fileadmin/layout/de.gif
}