Zum Inhalt springen

Mehrsprachigkeit wie implementieren?

Erstellt am 12. Februar 2008 · 11 Antworten · letzte Antwort am 15. Februar 2008

Tags: Frage

MLa ·

in der typo3-doku von robert meyer habe ich ab seite 160 die vorgehensweise bei mehrsprachigen seiten gefunden. das anlegen einer weiteren sprache hat im backend gut funktioniert. auch das editieren klappt. leider schaffe ich es bis jetzt nicht, das typoscript anzupassen, weil ich nicht weiss, in welcher datei ich das tun soll. hier ist der auszug (kursiv) aus der doku. wo muss der fettgedruckte quelltext eingebunden werden? ich bin absoluter neuling in typo3. wer kann mir helfen?

Damit nun nur die Seiteninhalte der deutsche Sprache dargestellt werden, müssen wir in
TypoScript unsere Konfiguration für den Marker "CONTENT" erweitern:

seite.10.marks.CONTENT {
table = tt_content
select.orderBy = sorting
select.where = colPos = 0
select.languageField = sys_language_uid
}


Ein erneutes Betrachten der Webseite im Frontend zeigt uns, dass jetzt nur noch der
deutsche Inhalt dargestellt wird. Wir müssen es nun allerdings noch ermöglichen, den
englischen Inhalt ausgeben zu lassen. Hierzu erweitern wir unser Template um weitere
folgende Zeilen, direkt im oberen Abschnitt, möglich oberhalb von "seite = PAGE":

01 config.linkVars = sprache
02 config.sys_language_uid = 0
03 config.language = de
04 [globalVar = GP:sprache=1]
05 config.sys_language_uid = 1
06 config.language = en
07 [global]


· In Zeile 1 wird angegeben, dass ein Parameter "sprache" mit jedem von Typo3 aus
erzeugten Link weitergegeben wird.
· In den Zeilen 2 und 3 wird die ID der Sprache auf "0" (Defaultsprache), und der
"Language-Label" auf "de" gesetzt.
· In Zeile 4 folgt eine Condition-Bestimmung: Die Zeilen 5 und 6 werden nur dann
ausgeführt, wenn der übergebene Parameter "sprache" gleich 1 ist.
· In Zeile 7 wird der Condition-Bereich verlassen.

McGregor ·
MLa schrieb

Damit nun nur die Seiteninhalte der deutsche Sprache dargestellt werden, müssen wir in TypoScript unsere Konfiguration für den Marker "CONTENT" erweitern:

Genau da! Im TypoScript.
Öffne das Template der root-Seite. Dort "Info/Modify" klicken und die Texte eingeben.

Grüße
McGregor

MLa ·

vielen dank für die antwort. jetzt weiss ich, wo man das setup des templates editieren kann. ich habe für die mehrsprachigkeit folgendes eingegeben:

config.linkVars = L
config.sys_language_uid = 0
config.language = de
[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = en
[global]

page.5 = text
page.5.wrap = <a href="index.php?id=|&L=1>English</a>
page.5.field = uid
[globalvar = GP:L = 1]
page.5.wrap = <a href="index.php?id=|&L=0>Deutsch</a>
[global]

nach anleitung von robert mayer habe ich eine neue sprache (englisch) angelegt und testweise einen seiteninhalt übersetzt. soweit funktioniert das alles wie beschrieben. die standardsprache deutsch hat die id=0 und englisch die id=1. leider wird weder der kleine textlink Deutsch/Englisch angezeigt, noch erscheint die englische übersetzung der seite bei direkteingabe von .../index.php?id=testseiten-id&L=1.
wer kann mir weiter helfen?

Gruß, ML

McGregor ·

Hi!

Aus dem kleinen Snippet kann ich das nicht erkennen (Kristallkugel ist in der Werkstatt). Vielleicht könntest du dein ganzes TypoScript hier mal posten.

Grüße
McGregor

MLa ·

hallo mcgregor,

vielen dank für die schnelle antwort. mittlerweile funktioniert es. ich habe folgendes im setup eingegeben:

page.30 = PHP_SCRIPT
page.30.file = media/scripts/example_languagemenu.php

config.linkVars = L
config.sys_language_uid = 0
config.language = de
config.locale_all = de_DE

[globalVar = GP:L = 1]
config.sys_language_uid = 1
config.language = en
config.locale_all = english
[global]

ich hab das example_languagemenu.php-script (in quickstart enthalten) ein bißchen angepasst und sehe jetzt die gewünschten flaggen (deutsch und englich). die sprachwahl funktioniert prima.

dennoch gibt es eine nächste frage. ich möchte die flaggen gern in meiner rechten menüleiste sehen. leider weiß ich nicht, wie ich das dort hin plazieren soll. hast du dafür ne lösung? im grunde genommen erscheinen sie jetzt etwas lieblos unterhalb des inhaltsbereiches. meine seite hat folgenden aufbau: kopfbereich, menübereich links, inhaltsbereich, menübereich rechts.

Gruß, ML

McGregor ·

Hi!

Die Position musst du dann im Template angeben (HTML-Datei).
Dann musst du natürlich den Marker ansprechen. Schau dir doch nochmal das Tutorial von Robert an und arbeite es von vorne durch...

Grüße
McGregor

MLa ·

ok. mcgregor, ich nutze im moment das plugin tt-Board als kleines forum. der tabellenkopf in der listenansicht ist auf englisch (TOPICS,AUTHOR,DATE). hast du ne ahnung, wie die sprachumwandlung auf deutsch funktioniert. da tut sich im moment bei mir noch nichts. ich kann zwar in der mitgelieferten datei board_template2.tmpl diese dinge von hand auf deutsch editieren, aber dann klappt wieder die umwandlung nach englisch nicht.

Gruß, ML

boingboing ·

Hast Du im Erweiterungsmanager schon die entsprechenden Sprachen herunter geladen?

Um nachträglich installierte Plugins in anderen Sprachen nutzen zu können,musst Du in der Regel nach der Installation des Plugins im Erweiterungsmanager aus dem Pulldown-Menü den Menüpunkt "Translation handling" aufrufen und dann die entsprechende Sprache auswählen und dann "Synchronize" oder "Update" klicken.

Dann sollten auch die Objekte in der anderen Sprache angezeigt werden

😉

Grüße,

Marc

MLa ·

hallo marc,

nach einem update nach deiner beschreibung wird leider bei tt_board folgendes angezeigt: Could not fetch translation status. was kann ich tun?

Gruß, ML

MLa ·

im übrigen funktioniert die übersetzung bei der form von tt_board einwandfrei, nur eben bei der liste nicht.

Gruß, ML