[TYPO3-german] Sprachmenu mit ISO-Codes

Andreas Becker ab.becker at web.de
Thu Jun 14 21:05:08 CEST 2007


Hallo Adrian

Wenn ich das richtig sehe, hast Du zwei Menus installiert und vermischt.
Beschraenke dich besserauf ein einziges CAB oder SR
Kopiere dein TS separat und sichere es da erst einmal ab, ebenso deine
constants. (ZurSicherheit)
Danach loescht du alles was mit sr_languagemenu zu tun hat aus den
Constants, der localconf und dem TS Setup.
Es duerfte danach nur noch CAB uebrig sein!


ODER due loeschst alles was mit CAB zu tun hast raus und benutzt
SR_languagemenu

Ins Setup:
-------------------------------------------------------------------------------------

temp.languageMenu = COA
temp.languageMenu {
10 = RECORDS
10.tables = tt_content
10.source = 456  //Der Storagefolder wo du die Sprachen abgelegt hast. Siehe
Manual
}

subparts.languageMenu < temp.languageMenu

//Im Template den Marker setzten. Achte auf den Namen und die Gross und
Kleinschreibung
------------------------------------------------------------------------------------
ODER mache es mit den Sprachen aus der "Weltkugel"

temp.languageMenu < plugin.tx_srlanguagemenu_pi1
temp.languageMenu.languagesUidsList = 1,3,4,7
temp.languageMenu.defaultLayout= 1

subparts.languageMenu < temp.languageMenu

//Die Liste der Sprachen die Du in der "Weltkugel"definiert hast. Die
Reihenfolge         bestimmt die Anzeige!
-------------------------------------------------------------------------------
ODER wie wir es machen mit CoolUri und sr_languageMenu

1. KEIN EINTRAG IN localconf.php noetig!!!  Bitte alle RealUrlSachen aus der
localconf loeschen wie im Tutorial beschrieben.
    TIP ein Backup auf jeden Fall machen!!!

2. Sprachen in der Welkugel definieren
3. CoolUri und sr_languageMenu installieren (siehe Manual und Tutorials)
-----------
Danach in Constants:

plugin.tx_srlanguagemenu_pi1 {
  useIsoLanguageCountryCode = 1
  showLinkWithFlag = 1
  separator = &#124;
  token = &#124;
}

---------
In Setup:

# CoolURi
config.simulateStaticDocuments = 0
config.baseURL = http://www.domain.com      //Deine Base eingeben !!!
config.tx_cooluri_enable = 1
config.redirectOldLinksToNew = 1

# Localization:
config {
linkVars = L
sys_language_mode = content_fallback
sys_language_overlay = 1
}

[globalVar = GP:L=1]
config {
sys_language_uid = 1
language = en
locale_all = en_EN
metaCharset = utf-8
}

[globalVar = GP:L=2]
config {
sys_language_uid = 2
language = de
}

[globalVar = GP:L=3]
config {
sys_language_uid = 3
language = th
}

[global]

#LanguageMenu
lib.languageMenu < plugin.tx_srlanguagemenu_pi1
lib.languageMenu.languagesUidsList = 1,2,3
lib.languageMenu.defaultLayout= 0
lib.languageMenu.link.INACT.doNotLinkIt=0
subparts.languageMenu < lib.languageMenu

#same localized structure
config.sys_language_overlay = 1

--------------------------------------------------------
Diese CoolConf.xml in das typo3conf directory kopieren.

xml
----------------
<?xml version="1.0" encoding="utf-8"?>
<cooluri>
  <cooluris>1</cooluris>

  <cache>
    <usecache>1</usecache>
    <params2cool>
      <checkforchangeevery>1</checkforchangeevery>
    </params2cool>
    <cool2params>
      <translateifnotfound>0</translateifnotfound>
      <oldlinksvalidfor>365</oldlinksvalidfor>
    </cool2params>
    <cacheparams>0</cacheparams>

    <pagenotfound>
      <status>HTTP/1.0 404 Not Found</status>
      <behavior type="message"><![CDATA[ <h1>Page not found!</h1>
]]></behavior>
    </pagenotfound>
  </cache>

  <pagepath>
    <title>alias,subtitle,title</title>
    <saveto>id</saveto>
    <default>0</default>
    <userfunc>tx_cooluri->getPageTitle</userfunc>
  </pagepath>

  <uriparts>
    <part>
      <parameter>tx_ttnews[tt_news]</parameter>
      <lookindb>
        <to>SELECT title FROM tt_news WHERE uid=$1</to>
        <translatetoif>
          <match>^[0-9]+$</match>
        </translatetoif>
        <urlize>1</urlize>
      </lookindb>
    </part>
    <part>
      <parameter>tx_eeblog[showUid]</parameter>
      <lookindb>
        <to>SELECT subject FROM tx_eeblog_maintable WHERE uid=$1</to>
        <translatetoif>
          <match>^[0-9]+$</match>
        </translatetoif>
        <urlize>1</urlize>
      </lookindb>
    </part>
  </uriparts>

  <predefinedparts>
    <part>
      <parameter>tx_ttnews[backPid]</parameter>
    </part>
    <part>
      <parameter>cHash</parameter>
    </part>
    <part>
      <parameter>tx_eeblog[pointer]</parameter>
    </part>
    <part>
      <parameter>tx_eeblog[backPID]</parameter>
    </part>
    <part>
      <parameter>no_cache</parameter>
    </part>
  </predefinedparts>

  <valuemaps>
    <valuemap>
      <parameter>L</parameter>
      <value key="">0</value>
      <value key="en">1</value>
    </valuemap>
  </valuemaps>

  <paramorder>
    <param>L</param>
  </paramorder>

</cooluri>

-----------------
Um nun deine Sprachen zu ergaenzen musst du hier nur noch die Valuemap zum
parameter L (Language) ergaenzen.
Fuege fuer jede Sprache den Language key hinzu.
<value key="so_soll_das_URL_SEGMENT_aussehen">Nummer der Sprache aus der
Weltkugel</value>

Beispiel siehst Du hier
http://docs.google.com/View?docid=dd33gg45_3f8j96p#XML-EXAMPLES

Wo die URL Segmente erscheinen sollen wird drch die reihenfolge der
Parameter eintraege definiert ODER (finde ich einfacher)
man haengt einen paramorder befehl hinten dran (siehe die Beispiele)

SPRACHE VORNE
*<partorder>
     <part>valuemaps</part>
     <part>pagepath</part>
     <part>uriparts</part>
     <part>predefinedparts</part>
  </partorder>

*SPRACHE HINTEN*
**<partorder>
     <part>pagepath</part>
     <part>uriparts</part>
     <part>predefinedparts</part>
      <part>valuemaps</part>
  </partorder>

*Man verschiebt lediglich die Valuemaps.

In die Valuemaps kannst Du dann selber bestimmen, wie die Sprachen in derURL
erscheinen sollen - wie oben beschrieben.
z.B.
en
englisch
english
oder auch
das_ist_nun _diese_Seite_in_Aenglidsch

Das bleibt dir voellig selbst ueberlassen.

Viel Spass
Bis morgen - bei uns ist schon 2h nachts

Andi
* *



-----------------

Wie man genau CoolUri INstalliert siehst Du hier:
http://docs.google.com/View?docid=dd33gg45_3f8j96p
Danach sieht es so aus wie auf unserer Seite gerade eben
http://www.t3pack.org.

Ich denke so soll es aussehen oder?

Probiere es und komme ggf. zurueck
Andi


More information about the TYPO3-german mailing list