Zum Inhalt springen

Mit Deutsch beginnen

Erstellt am 17. September 2004 · 5 Antworten · letzte Antwort am 20. September 2004

Tags: Frage

CokeLightMan ·

Hallo,

wie kann ich es schaffen das wenn meine Seite startet nicht die Standardsprache English geöffnet wird sondern Deutsch... Ich habe die Variante mit der select_language.php - Datei genommen...

Vielleicht hat jemand eine Idee...

Danke!
Stefan

mstuebner ·
CokeLightMan schrieb

Hallo,

wie kann ich es schaffen das wenn meine Seite startet nicht die Standardsprache English geöffnet wird sondern Deutsch... Ich habe die Variante mit der select_language.php - Datei genommen...

Vielleicht hat jemand eine Idee...

Das ist doch lediglich eine Frage wie Du Deine Language-IDs vergibst. Dass diese dann mit den IDs im PHP Skript übereinstimmen müssen ist ja klar, oder?

CokeLightMan ·

ja ja, das ist mir schon klar... nur leider sieht mein php script so aus:

<?php
/***************************************************************
*  Copyright notice
*  
*  (c) 1999-2002 Kasper Skårhøj (kasper@typo3.com)
*  All rights reserved
*
*  This script is part of the Typo3 project. The Typo3 project is 
*  free software; you can redistribute it and/or modify
*  it under the terms of the GNU General Public License as published by
*  the Free Software Foundation; either version 2 of the License, or
*  (at your option) any later version.
* 
*  The GNU General Public License can be found at
*  http://www.gnu.org/copyleft/gpl.html.
*  A copy is found in the textfile GPL.txt and important notices to the license 
*  from the author is found in LICENSE.txt distributed with these scripts.
*
* 
*  This script is distributed in the hope that it will be useful,
*  but WITHOUT ANY WARRANTY; without even the implied warranty of
*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
*  GNU General Public License for more details.
*
*  This copyright notice MUST APPEAR in all copies of the script!
***************************************************************/
/**
 * example_languageMenu.php
 *
 * THIS IS AN EXAMPLE designed to work with the official Typo3 testsite, section "Another site in the ..."
 *
 * @author	Kasper Skårhøj <kasper@typo3.com>
 */


 
 // First, select all pages_language_overlay records on the current page. Each represents a possibility for a language.
$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"];
}

// Little red arrow, which is inserted to the left of the flag-icon if the TSFE->sys_language_uid equals the language uid (notice that 0=english, 1=danish and 2=german is SPECIFIC to this database, because these numbers refer to uid's of the table sys_language)
$pointer = '<img src="t3lib/gfx/content_client.gif" width="7" height="10" align=middle>';

// Set each icon. If the language is the current, red arrow is printed to the left. If the language is NOT found (represented by a pages_language_overlay record on this page), the icon is dimmed.
$flags = array();
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==7?$pointer:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=7" target=_top><FONT color=black>DEUTSCH</FONT></a>&nbsp;';
$flags[] = ($GLOBALS["TSFE"]->sys_language_uid==0?$pointer:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" target=_top><FONT color=black>ENGLISH</FONT></a>';

// Make the little menu. Notice, the menu does ONLY transfer the page-id and the "L" variable (which is also SPECIFIC for this website because "L" has been used in the extension template used to control the language setup)
$content = '<table border=0 cellpadding=0 cellspacing=0><tr><td><img src=clear.gif width=30 height=1></td><td>'.implode("",$flags).'</td></</tr></table>';

?>

Und da steht ja nicht drin mit welcher Id die Seite gestartet wird... :-/

Wie kann ich bei diesem script wenn auf "English" geklickt wird eine andere Seite im selben Fenster öffnen?

Danke!
Stefan

jenses ·

Es gibt eine Extension Language_detection (oder so ähnlich),
die versucht herauszufinden, welche Sprache im Browser als Standardsprache eingestellt ist und ruft die entsprechende Seite auf.
Funktioniert nicht zusammen mit Real_Url (wie so viele andere Sachen auch nicht mit Real_Url klarkommen)

Hast du deine Typo-Seite mit deutsch als Standardsprache angelegt und englisch als zusätzliche ?
Du könntest auch mal versuchen, englisch eine höhere ID zuzuteilen, vielleicht ruft er dann als erstes deutsch auf ?

jenses

CokeLightMan ·

Einfach im Root Template der Seite folgendes eintragen:

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

0 = Id der Sprache

FUNKTIONIERT...