Da ich von diesem Forum auch schon eine ganze Menge profitiert habe, wollte ich mal eine Schritt-für-Schritt Lösung zurückgeben.
Ich habe eine Seite erstellt, welche mehrsprachig ist. Dabei habe ich die native Mehrsprachigkeit von Typo3 genutzt und nicht die "pro Sprache ein Baum" Version. Vieleicht hilft folgendes dem einen oder anderen weiter.
config.linkVars = L
config.sys_language_uid = 0
config.language = de
config.index_enable = 1
config.index_externals = 1
config.no_cache = 0
plugin.tx_indexedsearch.show.rules = 0
page.10.marks.SEARCH = PHP_SCRIPT
page.10.marks.SEARCH.file = fileadmin/scripts/sprachen.php
# Standardsprache Deutsch
[globalVar = GP:L=0]
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE
# config.metaCharset = ISO-8859-1
date_stdWrap.strftime = %d. %B %Y
time_stdWrap.strftime= %H:%M
page.10.marks.SEARCH = FILE
page.10.marks.SEARCH.file = fileadmin/searchform.htm
[global]
[globalVar = GP:L=4]
config.sys_language_uid = 4
config.language = en
config.locale_all = en_EN
# config.metaCharset = ISO-8859-1
date_stdWrap.strftime = %d of %B %Y
time_stdWrap.strftime= %I:%M %p
page.10.marks.SEARCH = FILE
page.10.marks.SEARCH.file = fileadmin/searchform-e.htm
[global]
#
# Französisch
#
[globalVar = GP:L=1]
config.sys_language_uid = 1
config.language = fr
config.locale_all = fr_FR
page.10.marks.SEARCH = FILE
page.10.marks.SEARCH.file = fileadmin/searchform-f.htm
[global]
#
# Italienisch
#
[globalVar = GP:L=3]
config.sys_language_uid = 3
config.language = it
config.locale_all = it_IT
page.10.marks.SEARCH = FILE
page.10.marks.SEARCH.file = fileadmin/searchform-i.htm
[global]
# STANDARDKONFIGURATION
page = PAGE
page {
typeNum = 0
# Allgemeine Seiteneigenschaften setzen
und weiter gehts im TS Script nach eigenen Wünschen
Interessant sind folgende Zeilen:
*********************************
1,2,3 : Hier werden die Zeilen für die Standardsprachkonfiguration gesetzt. Wenn ich nun im FE auf die Startseite www.meineurl.com gehe, interpertiert es den "Language-Interperter" &L=xyz noch nicht. Diesen Umstand kann ich nutzen, indem ich auf irgend einen Platzhalter (hier ###SEARCH### [dieser wird nacher pro Sprache indibiduell definiert - aber erst nach der Spracherkennung]) setze und von dort ein PHP Script laufen lasse, welches ich nur dann ansteuere, wenn KEIN Sprachparameter gesetzt ist - dies ist dann eo ipso nur vor der Browsererkennung der Fall.
4,5,6 : Wird für die Indexierung der Suchseiten gebraucht
anschl. : Normale Konfigurationsfiles VOR der "page = PAGE" Standardkonfiguration. Ich hab das TS Script mal so gelassen, wie ich es habe, vieleicht kann man Ideen ergänzen oder kürzen.
Jetzt kommt das PHP Script, welches man ansprechen kann.
Anmerkung: Der MARKER ###SEARCH### wird einfach am Anfang nicht benutzt, desswegen habe ich ihn einfach "missbraucht". Mann kann auch irgendwo auf der Seite einen Marker platzieren, welchen man dann nach erkannter (wichtig!!!) Sprache leer besetzt, sonst interpertiert es den Marker mehrmals.
<?php
$browser = $_SERVER["HTTP_ACCEPT_LANGUAGE"];
$lang = substr($browser,0,2);
if($lang == "en") {
echo header('Location: http://www.meineurl.com/index.php?id=11&L=4');
}
elseif($lang == "de") {
echo header('Location: http://www.meineurl.com/index.php?id=11&L=0');
}
?>
Hier braucht man nur die URL mit der jeweils gewünschten Startseite zu ersetzen. Ab da läuft das ganze dann jeweils mit übergebenem Sprachparameter. Auch hier habe ich die Reihenfolge so belassen, wie ich meine Sprachen definiert habe. (Französisch und Italienisch sind da noch nicht drin, diese legt man aber einfach dazwischen)...
Wenn ich die Seite fertig habe, werde ich hier mal nen Link zum Endprodukt posten.
Hope it helps...
Stefan