Typoscript内容本地化

时间:2012-10-12 09:49:20

标签: typo3 typoscript templavoila

我正在开发一个支持多语言的TYPO3网站。我正在使用TemplaVoila进行模板映射。网站适用于两种语言。但是在TemplaVoila地图中使用Typoscript添加的内容仅以默认语言呈现,而其他语言中缺少来自Typoscript的内容。

这是我的错别字:

    lib.autherInfo = CONTENT
    lib.autherInfo {
      table = tt_content
  select {
            selectFields = cruser_id
         }
  renderObj = COA
  renderObj {

        10 = RECORDS
        10{
          source.field = cruser_id 
          tables = be_users
          dontCheckPid = 1
          conf.be_users = COA
          conf.be_users {
            10 = TEXT
            10.field = realName
            10.noTrimWrap = ||, |
            15 = RECORDS
            15{
                  source.field = usergroup 
                  tables = be_groups
                  dontCheckPid = 1
                  conf.be_groups = COA
                  conf.be_groups {
                  10 = TEXT
                  10.field = title
                  10.noTrimWrap = ||, |
              }
            }
            20 = TEXT
            20.dataWrap = <span><a href="mailto:{field:email}" >{field:email}</a></span>      
           }
         }
      }
    }
    lib.autherInfo.wrap = <p>by:&nbsp|</p>

上述typoscript的输出标记为:

    <p>by:&nbsp;Administrator, admin, <span><a href="mailto:admin@kultur.com">admin@kultur.com</a></span></p>

在其他语言中,输出是:

    <p>by:&nbsp;</p>

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您的问题是缺少您的拼写错误3语言配置。您可以设置语言回退至少获得一些输出。配置示例

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

    linkVars := addToList(L)

    uniqueLinkVars = 1  
    // content fallback
    sys_language_fallBackOrder = 1,0
    sys_language_mode = content_fallback ; 1,0
    sys_language_overlay = 1
    sys_language_content = 1    
}

尝试设置

sys_language_overlay = hideNonTranslated

sys_language_overlay = 0