Mehrsprachigkeit
Aus Wiki
1. Im HTML Template den Marker anlegen - hier ###SPRACHE###
2. Weitere Webseiten Sprachen anlegen
3. Folgenden Code ins Typoscript Template einfügen
#Setting up the language variable "L" to be passes along with links config.linkVars = L #####' set the default Site Language config.sys_language_uid = 0 config.language = de config.locate_all = de_DE ##### Define the used Site languages #English language, sys_language.uid = 0 #[globalVar = GP:L = 0] #config.sys_language_uid = 0 #config.language = en #config.locate_all = english #[global] # German language, sys_language.uid = 1 [globalVar = GP:L = 1] config.sys_language_uid = 1 config.language = it config.locate_all = italiano [global]
###SPRACHE### marks.SPRACHE = PHP_SCRIPT marks.SPRACHE.file = fileadmin/Template_v7/language.inc
language.inc
<?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==0?$pointer:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=0" target=_top><img src="media/flags/flag_de.gif" width="21" height="13" hspace=5 border="0"></a>'; $flags[] = ($GLOBALS["TSFE"]->sys_language_uid==1?$pointer:"").'<a href="index.php?id='.$GLOBALS["TSFE"]->id.'&L=1" target=_top><img src="media/flags/flag_uk'.($langArr[1]?"":"_d").'.gif" width="21" height="13" hspace=5 border="0"></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>';</code> ?>