typo3 - Typo3 vhs 语言返回 id 而不是语言
问题描述
我尝试设置具有 3 种不同语言的语言菜单。对于英语和德语它的工作。它将当前语言显示为 EN 或 DE。但是当我切换到意大利语时,它只在前端显示 id (7)。
我的代码是:
{v:page.language(languages: 'EN,DE,IT', pageUid: '0', normalWhenNoLanguage: 'EN')
语言设置:
[globalVar = GP:L = 1]
config {
sys_language_uid = 1
language = de
locale_all = de_DE.UTF-8
htmlTag_setParams = lang="de" dir="ltr" class="no-js"
}
[global]
[globalVar = GP:L = 2]
config {
sys_language_uid = 2
language = fr
locale_all = fr_FR.UTF-8
htmlTag_setParams = lang="fr" dir="ltr" class="no-js"
}
[global]
[globalVar = GP:L = 7]
config {
sys_language_uid = 7
language = it
locale_all = it_IT.UTF-8
htmlTag_setParams = lang="it" dir="ltr" class="no-js"
}
[global]
解决方案
如果 id 是 7 并且您的语言数组仅包含三个元素,您期望什么?
VH 不访问 TS 配置。它不能因为 VH 不能影响选择“请求”语言的条件。所以它只能访问当前的语言配置。
三个元素中的第 8 个元素(= 此 VH 的第一个参数:具有 2 个字符语言代码的数组)将超出范围,不应访问(如果您这样做,在某些语言中可能会获得安全性问题)。
推荐阅读
- node.js - 不同版本的npm安装的node包有区别吗?
- ag-grid - 如何在编辑时保持单元格突出显示
- python-3.x - 部分响应(API)
- c# - Unity 2D 格斗游戏相机
- java - java.lang.StackOverflowError - Kickstart 问题(2019 Round C Wiggle Walk)
- ember.js - WatcherAdapter 的第一个参数必须是 SourceNodeWrapper 节点的数组
- oracle - Birt 报告在 LONGDESCRIPTION CLOB 字段中存储 4000 个字符后跳过字母/行
- python - 从 Json 返回特定路径 python 的值
- firefox - Mozilla Firefox 原生消息传递错误:没有这样的原生应用程序
- r - 将 2dim 数组从 C 返回到 R