2016-05-26 8 views
0

Ist es möglich, eine Lokalisierung basierend auf RealURL 's valueMap statische Tabelle zu haben?Wie kann ich verschiedene Übersetzungen für Action Controller in TYPO3 haben?

Zum Beispiel in Deutsch Sprache, ich habe www.example.com/de/account/produktinfos/

  1. de/ ist Sprache
  2. account/ Seite
  3. produktinfos/ Controller-Aktion

Und was ich brauche, ist das übersetzen produktinfos/ Teil zu Englisch, dh www.example.com/en/account/productinfo/.

Gibt es eine Möglichkeit, die Controller-Aktion in RealURL zu übersetzen?

Antwort

2

Ich weiß nicht, ob diese Hilfe für Sie. Sie können einige realurl Post/Pre Procs verwenden.

zum Beispiel:

// realurl Hook for replacing some path 
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl'] = array(
    'encodeSpURL_postProc' => array('user_encodeSpURL_postProc'), 
    'decodeSpURL_preProc' => array('user_decodeSpURL_preProc') 
); 

und ersetzen Controller-Aktion in URL

function user_encodeSpURL_postProc(&$params, &$ref) { 
    $params['URL'] = str_replace('job/job/Job/show/', 'job/', $params['URL']); 
} 

function user_decodeSpURL_preProc(&$params, &$ref) { 
    $params['URL'] = str_replace('job/', 'job/job/Job/show/', $params['URL']); 
} 

der Blog-Post https://www.kartolo.de/2014/11/21/extbase-and-realurl/

Eine andere Lösung wie das sein kann?

// news pagebrowser 
    'my-action' => array(
     array(
      'GETvar' => 'tx_myext[action]', 
      'valueMap' => array(
        preg_match('%/de/%',$_SERVER['REQUEST_URI'])==1?'anzeigen':'show' => 'show', 
      ) 
     ), 
    ), 
+0

ja, ich kann das verwenden. Aber da konnte ich die sys_language_uid nicht finden - denke, dass diese Hooks schon früher ausgelöst werden. –

+0

Sie können die lang uid mit diesem $ GLOBALS ['TSFE'] -> sys_language_uid bekommen und überprüfen? –

+0

Oder verwenden Sie valueMap in realurl "Aktion" Konfiguration wie hier http://www.worldhack.de/typo3-extbase-extension-und-realurl/? –

Verwandte Themen