0

TYPO3 版本 6.1

我的页面结构:

root
  page1
    subpage1-1
    subpage_only_for_fr_1-2
    subpage_only_for_de_1-3
  page2
    subpage2-1
    subpage2-2

我的菜单结构是相同的(根项目除外):

  page1
    subpage1-1
    subpage_only_for_fr_1-2
    subpage_only_for_de_1-3
  page2
    subpage2-1
    subpage2-2

我的菜单 TS 是:

LEFTNAV = HMENU
LEFTNAV {
    1 = TMENU
    1 {
        wrap = <ul>|</ul>
        NO = 1
        NO {
            wrapItemAndSub = <li>|</li>
            stdWrap.field = title
        }
        ACT = 1
        ACT {
            wrapItemAndSub = <li class="active">|</li>
            stdWrap.field = title
        }
    }
    2 < .1
}

我的网站有另一种语言(默认 = 德语,附加 = 法语):

[globalVar=GP:L=0]
  config.sys_language_uid = 0
  config.language = de
[global]
[globalVar=GP:L=2]
  config.sys_language_uid = 2
  config.language = fr
[global]

我想根据当前语言在我的菜单中显示/隐藏一些页面。

例如,如果用户将语言切换为French,我想在菜单中显示页面subpage_only_for_fr_1-2并隐藏subpage_only_for_de_1-3。反之亦然。

我怎样才能做到这一点?

4

1 回答 1

3

解决了!这是简单的解决方案:

只需检查行为选项卡上的语言部分下的字段(当您编辑页面时):

Language
Localization 

 Hide default translation of page
 Hide page if no translation for current language exists 

1)对于我只需要德语的字段,我将复选框“如果不存在当前语言的翻译则隐藏页面”激活。注意:你不应该为他们添加任何法语翻译。

2)对于我只需要法语的字段,我将复选框“隐藏页面的默认翻译”激活。因为它是默认语言。

TYPO3 将根据当前语言正确隐藏/显示所需的页面!

于 2013-07-17T14:39:32.907 回答