Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Localization 类型3:HMENU不使用外语_Localization_Typo3_Typo3 7.6.x - Fatal编程技术网

Localization 类型3:HMENU不使用外语

Localization 类型3:HMENU不使用外语,localization,typo3,typo3-7.6.x,Localization,Typo3,Typo3 7.6.x,页脚菜单的定义如下: temp.footerNav = HMENU temp.footerNav { special = userfunction special.userFunc = \MyNamespace\Helper->footerNavArray wrap = <ul>|</ul> 1 = TMENU 1 { wrap = | expAll = 0 NO = 1

页脚菜单的定义如下:

temp.footerNav = HMENU
temp.footerNav {
  special = userfunction
  special.userFunc = \MyNamespace\Helper->footerNavArray

  wrap = <ul>|</ul>

    1 = TMENU
    1 {
        wrap = |
        expAll = 0

        NO = 1
        NO.ATagParams = class="footer-navigation-link"
        NO.stdWrap.htmlSpecialChars = 1
        NO.wrapItemAndSub = <li class="footer-navigation__item">|</li>
        NO.stdWrap.field = title // nav_title
    }
}
和英文:

array (size=7)
  0 => 
    array (size=2)
      'title' => string 'Company' (length=7)
      '_OVERRIDE_HREF' => string 'en/company.html' (length=15)
    ...
  ...
页脚菜单用英语(默认语言)工作得非常好,但是,我在德语页面(L=1)上看到的唯一输出是


    有什么想法吗?

    首先,上述行为是由
    [FE][hidePagesifnotTranslatedByderDefault]=1
    引起的,这是在多语言站点中正常工作所必需的。通过将
    “u SAFE”=true
    添加到菜单数组中,我终于能够解决这个问题:

    array (size=7)
      0 => 
        array (size=3)
          'title' => string 'Company' (length=7)
          '_OVERRIDE_HREF' => string 'en/company.html' (length=15)
          '_SAFE' => boolean true
        ...
      ...
    

    我在
    TYPO3\CMS\Frontend\ContentObject\Menu\AbstractMenuContentObject->filtermanupages()

    首先,上述行为是由
    [FE][hidepagesifnottranslatedbylaulty]=1
    引起的,这是在多语言站点中正常工作所必需的。通过将
    “u SAFE”=true
    添加到菜单数组中,我终于能够解决这个问题:

    array (size=7)
      0 => 
        array (size=3)
          'title' => string 'Company' (length=7)
          '_OVERRIDE_HREF' => string 'en/company.html' (length=15)
          '_SAFE' => boolean true
        ...
      ...
    

    我在
    TYPO3\CMS\Frontend\ContentObject\Menu\AbstractMenuContentObject->filtermanupages()的第1213行(核心版本7.6.2)中找到了解决方案。

    您也可以对不同的语言使用全局环境条件

    #setup the default language in case of bad L variable
    config.sys_language_mode = content_fallback
    config.uniqueLinkVars=1
    config.sys_language_overlay = 1
    config.sys_language_uid = 0
    config.language = en
    config.linkVars = L
    # Spanish language, sys_language.uid = 1
    [globalVar = GP:L = 1]
    config.sys_language_uid = 1
    config.language = es
    config.locale_all = spanish
    [global]
    # English language, sys_language.uid = 0
    [globalVar = GP:L = 0]
    config.sys_language_uid = 0
    config.language = en
    [global]
    

    您还可以对不同的语言使用全局环境条件

    #setup the default language in case of bad L variable
    config.sys_language_mode = content_fallback
    config.uniqueLinkVars=1
    config.sys_language_overlay = 1
    config.sys_language_uid = 0
    config.language = en
    config.linkVars = L
    # Spanish language, sys_language.uid = 1
    [globalVar = GP:L = 1]
    config.sys_language_uid = 1
    config.language = es
    config.locale_all = spanish
    [global]
    # English language, sys_language.uid = 0
    [globalVar = GP:L = 0]
    config.sys_language_uid = 0
    config.language = en
    [global]
    

    您可以检查是否存在覆盖德语页脚菜单的条件。我将在何处/如何执行此操作?如果转到TypoScript对象浏览器,您将在页面底部找到所有可能的条件。如果选中一个复选框,TSOB将显示应用于选中条件的值。现在转到temp.footerNav,看看有什么…另一个问题:你真的需要一个用户函数来创建这个菜单吗?IMHO创建包含页面快捷方式的文件夹要容易得多。。。或者使用special.list…无论我是否设置了条件,TS对象都是相同的
    [globalVar=GP:L=1]
    。是的,我需要一个自定义函数,因为页脚根据您在站点上的位置而变化(例如,链接“术语”始终链接到当前子树的相应术语页面)。您可以检查是否存在覆盖德语页脚菜单的条件。在哪里/如何执行此操作?如果转到TypoScript对象浏览器,您将在页面底部找到所有可能的条件。如果选中一个复选框,TSOB将显示应用于选中条件的值。现在转到temp.footerNav,看看有什么…另一个问题:你真的需要一个用户函数来创建这个菜单吗?IMHO创建包含页面快捷方式的文件夹要容易得多。。。或者使用special.list…无论我是否设置了条件,TS对象都是相同的
    [globalVar=GP:L=1]
    。是的,我需要一个自定义功能,因为页脚会根据您在网站上的位置而变化(例如,链接“术语”始终链接到当前子树的相应术语页面)。经过数小时的测试和搜索,您的回答节省了我的时间!谢谢经过几个小时的测试和搜索,你的回答救了我一天!谢谢