【问题标题】:unable to get the content when language is changed from default language语言从默认语言更改时无法获取内容
【发布时间】:2019-03-28 15:49:34
【问题描述】:

我是typo3 的新手。我面临语言问题。我已将页面名称设置为页脚,并以我的两种语言(即德、恩)设置内容。

lib.content_from_page3 = COA
lib.content_from_page3 {
    10 = CONTENT
    10 {
        table = tt_content
        select.where = colPos = 0
        select.pidInList = 48
    }
}
lib.content_from_page4 = COA
lib.content_from_page4 {
    10 = CONTENT
    10 {
        table = tt_content
        select.where = colPos = 0
        select.pidInList = 52
    }
}

这是我在模板中设置的打字稿。和

<f:cObject typoscriptObjectPath="lib.content_from_page3" />

<f:cObject typoscriptObjectPath="lib.content_from_page4" /> 

这是访问数据的代码。 lib.content_from_page3 是默认语言的内容,而 lib.content_from_page4 是英语。

problem is that when default language is selected everything is fine but when english is selected there is no data

是任何可以帮助我的人。

【问题讨论】:

    标签: typo3


    【解决方案1】:

    确保您已经正确地进行了如下的语言配置

    # Localization:
    config {
        linkVars = L(int)
        sys_language_uid = 0
        sys_language_overlay = 1
        sys_language_mode = content_fallback
        language = en
        locale_all = en_US.UTF-8
        htmlTag_setParams = lang="en" dir="ltr" class="no-js"
    }
    [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]
    

    愿这个对象可以帮助你

    lib.dynamicContent = COA
    lib.dynamicContent {
    10 = LOAD_REGISTER
    10 {
      colPos.cObject = TEXT
      colPos.cObject {
         field = colPos
         ifEmpty.cObject = TEXT
         ifEmpty.cObject {
            value.current = 1
            ifEmpty = 0
         }
      }
      pageUid.cObject = TEXT
      pageUid.cObject {
         field = pageUid
         ifEmpty.data = TSFE:id
      }
      contentFromPid.cObject = TEXT
      contentFromPid.cObject {
         data = DB:pages:{register:pageUid}:content_from_pid
         data.insertData = 1
      }
      wrap.cObject = TEXT
      wrap.cObject {
         field = wrap
      }
    }
    20 = CONTENT
    20 {
      table = tt_content
      select {
         includeRecordsWithoutDefaultTranslation = 1
         orderBy = sorting
         where = {#colPos}={register:colPos}
         where.insertData = 1
         pidInList.data = register:pageUid
         pidInList.override.data = register:contentFromPid
      }
      stdWrap {
         dataWrap = {register:wrap}
         required = 1
      }
    }
    30 = RESTORE_REGISTER
    }
    

    并将其放入您的模板文件中

    < f:cObject typoscriptObjectPath="lib.dynamicContent" data="{colPos: '0',pageUid:'52'}" />
    <f:cObject typoscriptObjectPath="lib.dynamicContent" data="{colPos: '0',pageUid:'48'}" />
    

    如果上面的对象不能帮助你,那么请尝试下面的对象

    lib.content_from_page3 = COA
    lib.content_from_page3 {
    10 = CONTENT
    10 {
     table = tt_content
    
    select {
    
        pidInList = {$config.logopageId}
    
        where = colPos = 0 
    
        max = 1
    
        languageField = sys_language_uid
    
    }
    }
    }
    

    如果您需要任何帮助,请告诉我!

    欢迎来到 TYPO3!:)

    【讨论】:

    • 感谢您的解释。我已经修复了错误。错误是我在用英语编辑内容时没有在语言选项卡中选择默认语言。我想再问一个问题。如何用typo3做一个电子商务网站以及如何集成扩展?
    • 这取决于你的要求,你可以typo3multishop.com, aimeos.org/typo3-shop-extension/,https://extensions.typo3.org/…, tt_product 但是如果你想要同样的 woocommerce ,这是不可能的。
    • 我又需要帮助了。如何在typo3中发出ajax请求??
    • 你必须像这样创建一个自定义页面 typeNum 并将其用作 URL
    • 抱歉没听懂。你能解释一下吗?我想要一个注册页面,所以我需要向 php 文件发出 ajax 请求,以便我可以处理数据上的一些工作
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-26
    相关资源
    最近更新 更多