2012-04-26 6 views
0

Я добавил новый язык сайта в проект TYPO3. Новый язык сайта имеет id=2. Но если я позвоню, например. www.your-domain.com/hr.html Я получаю 404 - page not found (обычно должна появляться начальная страница на переведенном языке). Также в меню отображаются ссылки без /hr/. Я могу вызвать страницы с http://www.your-domain.com/index.php?L=2. Конфигурация для Typo3 выглядитTYPO3: добавлен новый язык и получить 404 страница не найден

config { 
    linkVars = L 
    sys_language_mode = content_fallback 
    sys_language_overlay = hideNonTranslated 
    sys_language_uid = 0 
    language = de 
    locale_all = de_DE 
    htmlTag_langKey = de-DE 
} 

[globalVar = GP:L=1] 
config { 
    sys_language_uid = 1 
    language = en 
    local_all = en_GB 
    htmlTag_langKey = en-GB 
} 
[global] 

[globalVar = GP:L=2] 
config { 
    sys_language_uid = 2 
    language = hr 
    local_all = hr_HR 
    htmlTag_langKey = hr-HR 
} 
[global] 

Конфигурация RealURL является

'preVars' => array (
    '0' => array (
     'GETvar' => 'no_cache', 
     'valueMap' => array (
      'nc' => '1', 
     ), 
     'noMatch' => 'bypass' 
    ), 
    '1' => array (
     'GETvar' => 'L', 
     'valueMap' => array (
      'de' => '0', 
      'en' => '1', 
       'hr' => '2', 
     ), 
      'valueDefault' => 'de', 
     'noMatch' => 'bypass', 
    ), 
     '2' => array (
     'GETvar' => 'lang', 
     'valueMap' => array (
      'de' => '0', 
      'en' => '1', 
       'hr' => '2', 
     ), 
      'valueDefault' => 'de', 
     'noMatch' => 'bypass', 
    ), 

Для меня это похоже, что все должно работать, но это не так. Я также очистил RealURL Cache с

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urldecodecache'] = 'tx_realurl_urldecodecache'; 
    $TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urlencodecache'] = 'tx_realurl_urlencodecache'; 
    $TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_pathcache'] = 'tx_realurl_pathcache'; 

в localconf.php и нажав кнопку Clear all caches. Я использую realurl 1.12.1 и Typo3 4.5.5. Я также посмотрел на htaccess и не нашел ничего особенного. Что мне не хватает?

+0

Как выглядит адрес меню, когда вы на другом языке? Когда вы задаете параметр L в url. Как создается меню? – Fixus

+0

@Fixus: меню генерируется скриптом PHP. Я снова посмотрю на него и расскажу вам о результатах. Если я назову 'www.your-domain.com/index.php? L = 2', некоторые URL-адреса пропускают путь к языку (' hr'). Если я смотрю меню, не созданное моим PHP-скриптом, я в основном получаю 'http: //www.your-domain.com/index.php? Id = 67 & L = 2' (за исключением двух записей, которые пропускают' hr'). – testing

+1

Почему вы используете PHP-скрипт для генерации меню? Используйте typoscript. Они у вас будут правильно сформированные URL-адреса – Fixus

ответ

0

На странице urltool был удален, но все же есть urltoolconf_realurl.php (со старыми настройками). Это включает в себя localconf.php переписал мои настройки realurl_conf.php (в том числе новый язык).

Но все же некоторые меню имеют index.php?id=69&L=2 в URL вместо URL-адреса. Таким образом, они были ссылками на другие страницы, и мне пришлось снова установить ссылки и убедиться, что есть доступный перевод (даже в папках ...).