Srachwahlmenü über Tmenu funktion?
| Autor | Nachricht |
|---|---|
|
Verfasst am: 30. 06. 2005 [14:37]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
Hi, hab mal versucht aus der GMenu vorlage (referenz) für die Sprachwahl als Textlinks mit TMenu umzusetzen. leider Zeigt mir das ding jetzt immer die aktuellen Seitennamen in den jeweiligen sprachen an, und nicht "deutsch | english", schön wärs auch den link zu entfernen wenn die sprache keine übersetzung hat (deutsch ist standard). Wäre nett wenn mir da mal einer helfen könnte hier mal mein TS-code TYPOSCRIPT languageMenu = HMENU languageMenu.special = language languageMenu.special.value = 0,2 languageMenu.1 = TMENU languageMenu.1.NO { 5 = text 5.value = deutsch || english } #languageMenu.1.ACT < lib.langMenu.1.NO #languageMenu.1.ACT=1 #languageMenu.1.ACT.color = red languageMenu.1.USERDEF1 < lib.languageMenu.1.NO languageMenu.1.USERDEF1=1 languageMenu.1.USERDEF1.5.text = deutsch || english languageMenu.1.USERDEF1.noLink = 1 und hier mal das original mit flaggen-bildern TYPOSCRIPT lib.langMenu = HMENU lib.langMenu.special = language lib.langMenu.special.value = 0,1,2 lib.langMenu.1 = GMENU lib.langMenu.1.NO { XY = [5.w]+4, [5.h]+4 backColor = white 5 = IMAGE 5.file = media/flags/flag_uk.gif || media/flags/flag_fr.gif || media/flags/flag_es.gif 5.offset = 2,2 } lib.langMenu.1.ACT < lib.langMenu.1.NO lib.langMenu.1.ACT=1 lib.langMenu.1.ACT.backColor = black lib.langMenu.1.USERDEF1 < lib.langMenu.1.NO lib.langMenu.1.USERDEF1=1 lib.langMenu.1.USERDEF1.5.file = media/flags/flag_uk_d.gif ||media/flags/flag_fr_d.gif || media/flags/flag_es_d.gif lib.langMenu.1.USERDEF1.noLink = 1 Design/Programmierung/CMS
www.nullzeit.de |
|
Verfasst am: 01. 07. 2005 [00:32]
|
|
|
alphaonline
Dabei seit: 12.06.2005
Beiträge: 452
|
Unter TYPO3 3.8.0 gibts dafür sowas "Du sollst den Tag nicht vor dem Absturz loben!"
Fun und mehr unter http://www.alpha-online.org Klick & Vote Your Nr.1 - http://www.eventlisten.de |
|
Verfasst am: 01. 07. 2005 [10:25]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
Danke alphaonline ich glaub ich hab mich missverständlich ausgedrückt... was ich machen will, ist das flaggenmenü zur sprachwahl deutsch | english durch textlinks zu ersetzen. und wenn keine übersetzung vorhanden ist soll statt dem link halt nur text dort stehen. Design/Programmierung/CMS
www.nullzeit.de |
|
Verfasst am: 01. 07. 2005 [22:25]
|
|
|
alphaonline
Dabei seit: 12.06.2005
Beiträge: 452
|
Ich arbeite auf meinen betreuten Seiten mit dem Script my_languageMenu.php, da geht das problemlos ! Voraussetzung: in meinen Templates existiert ein Marker ###LANGUAGE### und das Script liegt im Ordner /fileadmin/scripts/ Als erstes im root-Template-SETUP vor der PAGE-Konfiguration die Sprachen und dazugehörige Einstellungen festlegen (ist sowieso immer gut TYPOSCRIPT ############################################### # Konfiguration der Sprachen ############################################### # Standardsprache deutsch wird festgelegt config.sys_language_uid = 0 config.language = de config.locale_all = de_DE date_stdWrap.strftime = %d. %B %Y time_stdWrap.strftime= %H:%M ############################################### # die Variable zur Sprachauswahl wird definiert config.linkVars = L ############################################### # die verschieden Seiten-Sprachen werden definiert # Deutsch, sys_language.uid = 0 [globalVar = GP:L = 0] config.sys_language_uid = 0 config.language = de config.locale_all = de_DE date_stdWrap.strftime = %d. %B %Y time_stdWrap.strftime= %H:%M [global] # English language, sys_language.uid = 1 [globalVar = GP:L = 1] config.sys_language_uid = 1 config.language = en config.locale_all = english date_stdWrap.strftime = %d of %B %Y time_stdWrap.strftime= %I:%M %p [global] ### ENDE SPRACHUMSCHALTUNG ####################### Dann innerhalb der PAGE-Konfiguration: TYPOSCRIPT ### SPRACHUMSCHALTUNG LANGUAGE = PHP_SCRIPT LANGUAGE { file = fileadmin/scripts/my_languageMenu.php } "Du sollst den Tag nicht vor dem Absturz loben!"
Fun und mehr unter http://www.alpha-online.org Klick & Vote Your Nr.1 - http://www.eventlisten.de |
|
Verfasst am: 04. 07. 2005 [12:24]
|
|
|
Stev99
Dabei seit: 23.05.2005
Beiträge: 27
|
aber wie kann ich die template editiern ? |
|
Verfasst am: 04. 07. 2005 [12:27]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
Hey danke klar die mit den flaggen hab ich auch am laufen,... problemlos. Und du benutzt das mit textlinks? aber die eigentliche intension war dieses (extra dafür gemachte) HMenü zum laufen zu kriegen... dachte ich mir so. Design/Programmierung/CMS
www.nullzeit.de |
|
Verfasst am: 04. 07. 2005 [12:30]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
aber wie kann ich die template editiern ? stev ich glaube das du hier zum einen falsch bist und zum anderen solltest du mal deine fragen etwas ausführlicher stellen. Design/Programmierung/CMS
www.nullzeit.de |
|
Verfasst am: 04. 07. 2005 [17:07]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
Sprachmenü mit Textlinks (bzw. nurtext wenn keine übersetzung) hab mal dieses php-script etwas modifiziert,.. nicht sehr elegant, aber es funktioniert für meine bedürfnisse... PHP <?php if (!is_object($this)) die ('Error: No parent object present.'); // First, select all pages_language_overlay records on the current page. Each represents a possibility for a language. $res = $GLOBALS['TYPO3_DB']->exec_SELECTquery('*', 'pages_language_overlay', 'pid='.intval($GLOBALS['TSFE']->id).$GLOBALS['TSFE']->sys_page->enableFields('pages_language_overlay'), 'sys_language_uid'); $langArr = array(); while($row = $GLOBALS['TYPO3_DB']->sql_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) // 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(); //////* default sprache */ $flags[] = '<a globals="" tsfe-="">sys_language_uid==0?' class="lgactive" ':' ').' href="'.htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id.'&L=0').'" target="_top"> deutsch </a>'; //////* alternative sprache (language id 2 bei mir) */ $flags[] =( $langArr[2]?'<a globals="" tsfe-="">sys_language_uid==2?' class="lgactive" ':' ') . 'href="'. htmlspecialchars('index.php?id='.$GLOBALS['TSFE']->id .'&L=2'). '" target="_top">':' ' ) . 'english' . ($langArr[2]?'</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 = implode('',$flags); $content = '<div id="language">'.implode('',$flags).'</div>'; ?> greeetz chris Design/Programmierung/CMS
www.nullzeit.de |
|
Verfasst am: 25. 07. 2005 [22:53]
|
|
|
kuckuck
Dabei seit: 22.09.2004
Beiträge: 58
|
Mensch warum verwendet Ihr das PHP Script wenn es extra ein Menutyp gibt . Das einzige was ich noch herausfinden muss, ist wie ich den Blöden Titel des Menuelements ändern kann... [Dieser Beitrag wurde 1mal bearbeitet, zuletzt am 25.07.2005 um 22:54.] /* Nur wer schneller ist als der Strom hat die Kontrolle über seinen Weg. */
Ihr TYPO3 Partner. |
|
Verfasst am: 25. 07. 2005 [23:42]
|
|
|
nullzeit
Themenersteller
Dabei seit: 21.03.2005
Beiträge: 169
|
ja mensch, die antwort ist so simpel aber verherend: weil der menütyp mir nicht das liefert was ich will; die 2 wörter deutsch und english. falls du weißt wie, lass uns teil haben an deinem wissen gruß chris Design/Programmierung/CMS
www.nullzeit.de |




. Das einzige was ich noch herausfinden muss, ist wie ich den Blöden Titel des Menuelements ändern kann...