首页 > 解决方案 > 选择新语言后的typo3语言选择器问题

问题描述

嗨,在我的typo3 8 网站中,我添加了一个语言选择器。选择一种语言工作正常,内容从德语切换到英语它工作正常内容切换正常。

问题是当我单击英文版链接时,它总是回退到德文链接,因为/en/链接 URL 中缺少

在此处输入图像描述

浏览器中的 URL 看起来不错en,但在导航中,页面的 URL 不包含en

我使用 Typo3 8 和 realURL

排版:

config {
  sys_language_uid = 0
  language         = de
  locale_all       = de_DE.UTF-8
  htmlTag_langKey  = de
}

config.tx_realurl_enable = 1 

[globalVar = GP:L = 1]
config {
  sys_language_uid = 1
  language         = en
  locale_all       = en_US.UTF-8
  htmlTag_langKey  = en
}
[global]

temp.langMenu = HMENU
    temp.langMenu.special = language
    temp.langMenu.special.value = 0,1
    temp.langMenu.1 = GMENU
    temp.langMenu.1.NO {
    XY = [5.w]+4, [5.h]+4
    transparentColor = #17353e
      backColor = #17353e
    5 = IMAGE
    5.file = fileadmin/design/images/flag_de.gif || fileadmin/design/images/flag_en.gif

 }

    temp.langMenu.1.ACT < lib.langMenu.1.NO
    temp.langMenu.1.USERDEF1 < lib.langMenu.1.NO

    temp.langMenu.1.USERDEF1 = 1
    temp.langMenu.1.USERDEF1.5.file = fileadmin/design/images/flag_de.gif || fileadmin/design/images/flag_en.gif
    temp.langMenu.1.USERDEF1.noLink = 1

RealURL 配置:

    <?php
$GLOBALS['TYPO3_CONF_VARS']['EXTCONF']['realurl']=array (
  '_DEFAULT' => 
  array (
    'init' => 
    array (
      'appendMissingSlash' => 'ifNotFile,redirect',
      'emptyUrlReturnValue' => '/',
    ),
    'pagePath' => array(
                'type' => 'user',
                'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
                'spaceCharacter' => '-',
                'languageGetVar' => 'L',
                'expireDays' => 7,
                'rootpage_id' => 1,
                'firstHitPathCache' => 1,
            ),
    'fileName' => 
    array (
      'defaultToHTMLsuffixOnPrev' => 0,
      'acceptHTMLsuffix' => 1,
      'index' => 
      array (
        'print' => 
        array (
          'keyValues' => 
          array (
            'type' => 98,
          ),
        ),
      ),
    ),
    'preVars' => 
    array (
      0 => 
      array (
        'GETvar' => 'L',
                    'valueMap' => array(
                        'de' => '0',
                        'en' => '1',
                        ),
                    'valueDefault' => 'de',
                    # 'noMatch' => 'bypass',
      ),
    ),
  ),
);

在这种情况下我的失败是什么? 提前致谢。

标签: typo3typo3-8.x

解决方案


您需要添加config.linkVars = L(0-1)到您的 Typoscript 配置。这将告诉 TYPO3 系统将此链接参数传递给每个生成的 url。

请注意,此配置仅适用于 TYPO3 系统本身生成的内部链接:例如在菜单中或当您链接 RTE 中的另一个页面时。绝对放置的链接不会受此配置影响。

文档:https ://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#linkvars


推荐阅读