Hallo,
habe ein kleines Problem mit meiner mehrsprachigen Webseite. Wenn ich mich auf einer englischsprachigen Seite (alternativ) befinde und einen Menüpunkt anklicke (ist auch in Englisch verfügbar) lädt das Typo nicht die englische Seite, sondern die deutsche Seite. Habe hier mal mein Setup -Code:
config.linksVars = L
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE
[globalVar = GP:L = 2]
config.sys_language_uid = 2
config.language = en
config.locale_all = english
[global]
page = PAGE
page.typeNum = 0
page.stylesheet = fileadmin/Template/main.css
page.config {
admPanel = 1
spamProtectEmailAddresses = 2
spamProtectEmailAddresses_atSubst = (at)
}
page.20 = PHP_SCRIPT
page.20.file = fileadmin/Template/sprachmenu.php
page.10 = TEMPLATE
page.10 {
template = FILE
template.file = fileadmin/Template/index.html
}
includeLibs.pagetitle = typo3conf/ext/mf_pagetitle/pagetitle.php
plugin.mf_pagetitle.title = Meine Homepage - {page:title}
config.titleTagFunction = user_pagetitle_class->changetitle
page.10.workOnSubpart = DOCUMENT_BODY
page.10.subparts.CONTENT < styles.content.get
page.10.subparts{
DATUM < styles.content.lastUpdate
DATUM = TEXT
DATUM {
if.isTrue.data = page:lastUpdated
date = d.m.Y
wrap = Geändert am: |
data = register : SYS_LASTCHANGED
if >
}
}
[globalVar = GP:L = 2]
page.10.subparts.DATUM.date = F j, Y
page.10.subparts.DATUM.wrap = Last change: |
[global]
page.10.subparts {
IMPRESSUM = TEXT
IMPRESSUM.value = <a href="/fg_nt/index.php?id=20" tabindex="401">Impressum</a>
}
[globalVar = GP:L = 2]
page.10.subparts.IMPRESSUM.value =<a href="/fg_nt/index.php?id=20&L=2" tabindex="401">Imprint</a>
[global]
page.10.subparts {
MENU = HMENU
MENU.excludeUidList = 20
MENU.1 = TMENU
MENU.1.NO.allWrap = <li>|</li>
MENU.2 = TMENU
MENU.2 {
expAll = 0
NO.allWrap = <li><ul><li>|</li></ul></li>
}
}
page.10.subparts {
ROOTLINE = COA
ROOTLINE {
1 = HMENU
1 {
special = rootline
special.range = 0|-1
1 = TMENU
1.wrap = |
1.noBlur = 1
1.CUR = 1
1.NO {
linkWrap = | >
ATagParams =
}
1.CUR < 1.NO
1.CUR {
doNotLinkIt = 1
linkWrap = <span id="location">|</span>
}
}
}
}
Die PHP-Datei zur Sprachwahl ist richtig angepasst. Habe dort im Grunde nur die Sprach-IDs und die Beschriftungen verändert, sonst nichts.
Danke schon mal für eure Hilfe.
Viele Grüße,
Marc
Tag hab ich was überlesen oder hast du nichts zu den sprachen im setup drinnen?
# SprachVariable L initialisieren
config.linkVars = L
# Standardsprache UID 0 -> Deutsch
config.sys_language_uid = 0
config.language = de
config.locale_all = Deutsch
# Englisch, sys_language.uid = 3
[globalVar = GP:L = 3]
config.sys_language_uid = 3
config.language = en
config.locale_all = english
[global]
# francais, sys_language.uid = 4
[globalVar = GP:L = 4]
config.sys_language_uid = 4
config.language = fr
config.locale_all = francais
[global]
#russich, sys_language.uid = 7
[globalVar = GP:L = 7]
config.sys_language_uid = 7
config.language = ru
config.locale_all = russian
[global]
# chinese, sys_language.uid = 5
[globalVar = GP:L = 5]
config.sys_language_uid = 5
config.language = ch
config.locale_all = chinese
[global]
so was da in der art
MFG
Dander
@dander:
fang beim durchlesen doch einfach mal mit der zeile 1 an.
nur so als kleiner tipp... 😉
@lyso:
lyso schriebDie PHP-Datei zur Sprachwahl ist richtig angepasst. Habe dort im Grunde nur die Sprach-IDs und die Beschriftungen verändert, sonst nichts.
jaja, das sagen sie alle... 😉
der fehler liegt mit sicherheit trotzdem dort, wetten?
der sprachparameter wird betsimmt einfach nicht übergeben, und das ist dort hardcodiert.
@doku
warum??
er hat die sprachen im setup gar nicht konfiguriert
Dander schrieb@doku
warum??
er hat die sprachen im setup gar nicht konfiguriert
http://www.fielmann.com/ 8-) 8-) 8-) 8-) 8-) 8-) 8-) 8-) 8-) 8-) ...
hä???
und jetzt??
wofür ist der link??
Dander schriebhä???
und jetzt??
wofür ist der link??
bist heute aber echt gut drauf! 🙂
[edit]
aber die sprachconfig-zeilen aus dem obigen code von lyso jetzt hierhinzukopieren ist mir echt zu anstrengend... 😉
[/edit]
1. ist fielman keine typo3 seite
2. editiert 😃
3. kp was das ganze soll
MFG
Dander
sorry, hatte mein posting editiert, während du drauf geantwortet hattest.
das was ich gelöscht hatte, hab ich wieder reingeschrieben.
du vermißt also die sprachkonfiguration und ich hatte dir den tip gegeben den code von lyso ab zeile 1 durchzulesen, mehr kann ich jetzt echt nich mer dazu sagen...
es is halt einfach lustig, und schon gar kein drama! 😉
Also entweder ich bin total blind oder was weis ich
zum thema sprache sehe ich nur
page.20 = PHP_SCRIPT
page.20.file = fileadmin/Template/sprachmenu.php
Die erste zeile:
page = PAGE
page.typeNum = 0
page.stylesheet = fileadmin/Template/main.css
...
MFG
Dander
autsch
dohhhhhhhhhhh
:o
ein anzeige fehler von mozilla #evil#
und dafür so eine diskussion.....
MFG
Dander
Dander schriebautsch
dohhhhhhhhhhh
:o
ein anzeige fehler von mozilla #evil#
jaja... hab schon bessere ausreden gehört... 🙂
Dander schrieb...und dafür so eine diskussion.....
weiß gar nicht, was du hast?
mir hat´s jedenfalls tierischen spaß gemacht... 😃 😃 😃
ein anzeige fehler von mozilla
war das beste was mir in der kurzen zeit eingefallen ist :p
und nebenbei auch noch die wahrheit 😃
Hallo,
habe hier noch meine PHP-Datei eingefügt. Habe auch schon die ursprüngliche Datei ausprobiert (natürlich mit angepssten IDs) -> gleiches Verhalten der Seite.
// Für die aktuelle Seite werden alle all pages_language_overlay records geholt. Jeder Record entspricht einer Sprache
$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();
if ($GLOBALS["TSFE"]->sys_language_uid==2) {
// Deutsch ist aktiv - Englisch anzeigen
$flags[] = '<span id="s-dex"><a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" target=_top>deutsch</a></span>';
$flags[] = '<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" target=_top><img src="fileadmin/Template/images/s-de.png" alt="" id="s-en" title=""></a>';
} elseif ($GLOBALS["TSFE"]->sys_language_uid==0) {
// Englisch ist aktiv - Deutsch anzeigen
$flags[] = '<span id="s-enx"><a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=2" target=_top>english</a></span>';
$flags[] = '<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=2" target=_top><img src="fileadmin/Template/images/s-en.png" alt="" id="s-de" title=""></a>';
}
// Macht die Ausgabe. Das Menü transferitert die page-id und die "L" variable zur Sprachsteuerung
$content = implode("",$flags);
tja, 1:0 für dich, da hab ich meine wette wohl verloren... 😢
da muß ich jetzt nochmal überlegen...
p.s.:
cache gelöscht ? (altes hausmittel)
englische seiteninhalte nicht versteckt? (aber dann würdest du die menüpunkte wahrscheinlich erst gar nicht sehen...)
schmeiß doch testweise mal alles, was mit page.10 zu tun hat in die sprachconditions, also nicht nur impressum etc.
Ich bin zwar trotz Brille manchmal etwas blind - aber in meinem Code muss ich expliziet einschränken welchen content ich sehen will:
subparts.contentarea = CONTENT
subparts.contentarea {
table = tt_content
select.orderBy = sorting
select.where = colPos=0
select.languageField = sys_language_uid
}
So was fehlt doch da oben - oder nicht ?
Tom
Ich hab einen schreibfehler entdeckt
config.linksVars = L
müsste doch
config.linkVars = L
heißen
oder nicht
???
gratuliere zur lösung! nachdem du es erst gar nicht gesehen hast, haste jetzt wohl umso besser hingeguckt... 😉
Ja, das war der Fehler. Vielen Dank fü die Hilfe und viele Grüße!
Kann mir das jemand noch näher erklären? Mir ist es nach der obigen Diskussion noch nicht klar.
Ich habe nämlich auch das Problem, dass die Zweitsprache immer wieder auf default <b>zurückspringt.</b> Abgesehen davon funktioniert es eigentlich ganz gut.
Mein Setup:
# table = tt_content
select.orderBy = sorting
select.where = colPos=0
select.languageField = sys_language_uid
page.10 {
marks.SPRACHE = PHP_SCRIPT
marks.SPRACHE {
file = fileadmin/template1/my_languageMenu.php
}
# Variablen für Sprachmodul
config.linkVars = L
# German language, sys_language.uid = 0
[globalVar = GP:L = 0]
config.sys_language_uid = 0
config.language = en
config.locale_all = english
[global]
# English language, sys_language.uid = 5
[globalVar = GP:L = 5]
config.sys_language_uid = 5
config.language = de
config.locale_all = de_DE
[global]