我们的客户想要一个西班牙文首页,为什么不想要呢,但是菜单应该参考英文页面。
不幸的是,英语不是系统中的默认语言。
这可以在TYPO3内实现吗?
菜单是通过Typoscript生成的:
lib.nav = HMENU
lib.nav {
wrap = <ul class="noListStyle">|</ul>
entryLevel = 0
1 = TMENU
1 {
noBlur = 1
expAll = 1
NO = 1
NO {
wrapItemAndSub = <li>|</li>
ATagParams = data-id="{field:uid}"
allStdWrap.insertData = 1
}
CUR < lib.nav.1.NO
CUR {
wrapItemAndSub = <li class="active">|</li>
}
ACT < lib.nav.1.NO
ACT {
wrapItemAndSub = <li class="active">|</li>
}
IFSUB < lib.nav.1.NO
IFSUB {
wrapItemAndSub = <li class="hasChildren">|</li>
# doNotLinkIt = 1
}
CURIFSUB = 1
CURIFSUB {
wrapItemAndSub = <li class="hasChildren active">|</li>
}
ACTIFSUB = 1
ACTIFSUB {
wrapItemAndSub = <li class="hasChildren active">|</li>
}
SPC = 1
SPC {
doNotLinkIt = 1
doNotShowLink = 1
allWrap = <li class="spacer">|</li>
}
}
2 < lib.nav.1
2 {
wrap = <ul class="navSub">|</ul>
}
}
答案 0 :(得分:2)
回退到另一种语言而不是默认语言的解决方案是使用config.sys_language_mode = content_fallback
。正如您在文档中所看到的那样,通过这种模式,您可以指定一些语言UID,以将其作为备用语言:https://docs.typo3.org/typo3cms/TyposcriptReference/Setup/Config/Index.html#sys-language-mode
但是,页面上的内容仍然可以回退到另一个 语言,由此关键字的值定义,例如 content_fallback; 1、3、0, 退回到 sys_language_uid 1,之后到sys_language_uid 3的内容 并且如果该值也不存在,则默认为(0)。
在您的情况下,您仍然必须找到一种方法,如何从菜单中隐藏西班牙语页面,但回退到英语。页面语言覆盖配置中可能有某些内容吗?
在最坏的情况下,您可以通过请求数据库“手动”在TMENU对象中获得页面标题。
EDIT :那只用英文标题手工命名西班牙语页面标题又如何呢?