Hallo zusammen,
die Sprachwahl habe ich bis jetzt über das mitgelierferte Flaggenskript umgesetzt. Besser wäre jedoch, die Auswahl per Dropdownbox anzubieten, da es mittelfristig 9 Sprachen werden sollen und somit das Flaggenchaos vermieden werden kann.
Gibt es für diese Anforderung schon eine fertige Lösung oder muss ich sowas selber bauen?
Viele Grüße,
Tobias :-)
zwar hab ich es nich getestet.. aber versuchs mal mit meiner abgeänderten my_language.php . . .
<?php
$query = "SELECT * FROM pages_language_overlay WHERE pid=".$GLOBALS["TSFE"]->id.$GLOBALS["TSFE"]->sys_page->enableFields("pages_language_overlay")." GROUP BY sys_language_uid";
$res = mysql(TYPO3_db,$query);
$langArr=array();
while($row=mysql_fetch_assoc($res)) {
$langArr[$row["sys_language_uid"]]=$row["title"];
}
$flags = array();
// pro Zeile eine Sprache: definition der ID und der Flag
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==0?'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" class="lang">(German)</option>':'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" class="lang">German</option>');
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==1?'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=1" class="lang">(English)</option>':'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=1" class="lang">English</option>');
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==2?'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=2" class="lang">(Russian)</option>':'<option value="index.php?id='.$GLOBALS["TSFE"]->id.'&L=2" class="lang">Russian</option>');
// Rückgabe
$content = '<SELECT class="lang"><option value="" class="lang" selected="selected">Language...</option>'.implode("",$flags).'</SELECT>';
?>
ich habs nich getestet... könnte also fehler beinhalten 🙂 ...ausserdem sind da momentan nur 3 Sprachen gelistet, weitere musst du hinzufügen... (weitere zeilen hinzukopieren und ID der jeweligen Sprache anpassen)
...ich hoffe es funktioniert 😉
achja... die css-classen sind: SELECT.lang { ... } und OPTION.lang { ... }
MfG
So hatte ich mir das auch gedacht, dass ich einfach das Skript umändere. Werde Deine Lösung nachher mal ausprobieren, wenn ich daheim bin.
Danke für den Code. So spart man sich doch einige Zeit. :-)
Viele Grüße,
Tobias