Themen
Letzte Nachrichten
- TYPO3 und Bilder bei Facebook Links
- 12.05.2012 18:35
- Google Analytics und die Datenschutzaufsicht
- 07.05.2012 13:19
- "Nervige" Title-Tags bei Links in TYPO3
- 26.02.2012 10:58
- TYPO3 Install Tool und session.auto-start is enabled
- 20.02.2012 21:28
Kategorien
- Commerce (7)
- Design (4)
- Technology (18)
Blogrolls
Letzte Kommentare
- Inline
- 04.02.2011 13:09
Meist gelesene Posts
- Wochentag lokalisiert mit Fluid aus einem DateTime Objekt...
- 918 mal angeschaut
- 03.02.2011 15:38
- TYPO3 Backend Layouts
- 675 mal angeschaut
- 27.04.2011 23:57
- TYPO3 4.5 und kb_nescefe und Security Token
- 658 mal angeschaut
- 18.03.2011 17:43
- JQuery und IE9
- 625 mal angeschaut
- 24.03.2011 10:31
Zur Zeit wird gefiltert nach: multilanguage
Filter zurücksetzen
Extbase, AJAX und sys_language_mode = strict
Aufgabenstellung
Datensätze sollen in einem JQGrid angezeigt werden. Es sollen jedoch nur die lokalisierten Datensätze dargestellt werden. Standardmäßig werden die Datensätze der Standardsprache angezeigt, wenn keine Übersetzung in der ausgewählten Sprache vorliegt.
sys_language_mode = strict
Im TYPOScript für die XML Ausgabe den sys_language_mode setzten:
tx_toco3whatever_ajax = PAGE
tx_toco3whatever_ajax {
typeNum = 6001
config {
disableAllHeaderCode = 1
disablePrefixComment = 1
additionalHeaders = Content-type: text/xml
xhtml_cleaning = 0
admPanel = 0
sys_language_mode = strict
}
10 = COA_INT
10.10 < tt_content.list.20.toco3whatever_ajax
}
Multilanguage im SingleTree mit automatischer Spracherkennung und Fallback nicht auf Id 0
Das Problem
Für eine mehrsprachige TYPO3 Webseite mit einem SingleTree soll die "Standardsprache" geändert werden. Es gibt mehrere Sprachen, wobei deutsch die default language (id=0) ist. Die Extension rlmp_language_detection ist installiert, damit abhängig von den Browsereinstellungen die Sprache automatisch selektiert wird.
Im Nachhinein wurde entschieden, dass wenn die Sprache nicht vorhanden ist, nicht die deutschsrachige (id=0) sondern die englischsprachige (id=1) Seite angezeigt werden soll.
Die Lösung
Mit folgender Änderung an rlmp_language_detection/pi1/class.tx_rlmplanguagedetection_pi1.php
kann die beschriebenen Thematik erreicht werden:
Zeile 206 folgendes einfügen:
if ($preferredLanguageOrPageUid === FALSE) {
$preferredLanguageOrPageUid = 1;
}
Wurde keine passende Sprache gefunden, so wird die Sprache auf id = 1 gesetzt.