Zum Inhalt springen

Sprachauswahl per Dropdownbox

Erstellt am 28. Januar 2005 · 2 Antworten · letzte Antwort am 28. Januar 2005

Tags: Frage

tstening ·

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 :-)

n-joy ·

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

tstening ·

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