Menu 通过打字脚本实现基于文本的语言菜单

Menu 通过打字脚本实现基于文本的语言菜单,menu,internationalization,typo3,typoscript,Menu,Internationalization,Typo3,Typoscript,我想点击文本“英语”来获取网站的英语版本。在我使用图形菜单之前: lib.tslangmenu = HMENU lib.tslangmenu { special = language special.value = 0,1,2 addQueryString = 1 1 = GMENU 1.NO { XY = 24,16 5 = IMAGE 5.file = fileadmin/templates/images/deutsch.jpg || filead

我想点击文本“英语”来获取网站的英语版本。在我使用图形菜单之前:

lib.tslangmenu = HMENU
lib.tslangmenu {
  special = language
  special.value = 0,1,2
  addQueryString = 1
  1 = GMENU
  1.NO {
    XY = 24,16
    5 = IMAGE
    5.file = fileadmin/templates/images/deutsch.jpg || fileadmin/templates/images/englisch.jpg || fileadmin/templates/images/kroatisch.jpg
  }

  1.ACT < 1.NO
  1.ACT = 1
  1.ACT.wrap = <span class="langhide"> | </span>

  1.CUR < 1.ACT
  1.CUR = 1
}
lib.tslangmenu=humenu
lib.tslangmenu{
特殊=语言
特殊值=0,1,2
addQueryString=1
1=GMENU
1{
XY=24,16
5=图像
5.file=fileadmin/templates/images/deutsch.jpg | | | | fileadmin/templates/images/kroatisch.jpg
}
1.ACT<1.NO
1.ACT=1
1.ACT.wrap=|
1.CUR<1.ACT
1.CUR=1
}
到目前为止,这一做法行之有效。现在我应该将菜单更改为基于文本的菜单

lib.tslangmenu {
  special = language
  special.value = 0,1,2
  special.normalWhenNoLanguage = 0
  addQueryString = 1
  1 = TMENU
  1.NO = 1
  1.NO.stdWrap.override = Deutsch || English || Hrvatski

  1.ACT < 1.NO
  1.ACT = 1
  1.ACT.stdWrap = <span class="langhide"> | </span>

  1.CUR < 1.ACT
  1.CUR = 1
}
lib.tslangmenu{
特殊=语言
特殊值=0,1,2
special.normalWhenNoLanguage=0时
addQueryString=1
1=t菜单
1.NO=1
1.NO.stdWrap.override=Deutsch | | | English | | Hrvatski
1.ACT<1.NO
1.ACT=1
1.ACT.stdWrap=|
1.CUR<1.ACT
1.CUR=1
}
现在,使用
span
的换行将被完全忽略。此外,菜单现在显示如下:

MyCurrentPageName英文版赫瓦茨基


如果我使用德语,则当前页面标题会覆盖单词
deutsch
。这同样适用于所有其他语言。我还尝试了中给出的TS。但目前情况也是如此。如何使其工作?

第一个错误在包装中:
未包装,因此不会生成跨度(对于无项目)。显示页面标题的问题来自错误的复制。线路

1.ACT < 1.NO
1.ACT<1.NO
应该是

1.ACT < .1.NO
1.ACT<.1.NO
以防万一,下面是我正在使用的TS配置:

lib.languageMenu = HMENU
lib.languageMenu {
  special = language
  special.value = 0,1

  1 = TMENU
  1 {
    wrap = <ul class="langMenu">|</ul>
    noBlur = 1
    NO = 1
    NO {
      linkWrap = <li class="menu-item normal">|</li>

      stdWrap.override = English || Deutsch
      stdWrap.htmlSpecialChars = 1
    }

    ACT < .NO
    ACT {
      doNotLinkIt = 1
      linkWrap = <li class="menu-item active">|</li>
    }

    # NO + Translation doesn't exist
    USERDEF1 < .NO
    USERDEF1.doNotLinkIt = 1

    # ACT + Translation doesn't exist
    USERDEF2 < .ACT
    USERDEF2.doNotLinkIt = 1
  }
}
lib.languageMenu=humenu
语言菜单{
特殊=语言
特殊值=0,1
1=t菜单
1 {
wrap=
    noBlur=1 否=1 没有{ linkWrap=
  • |
  • stdWrap.override=英语| |德语 stdWrap.htmlSpecialChars=1 } 第号法案 表演{ doNotLinkIt=1 linkWrap=
  • |
  • } #不存在+翻译 USERDEF1<.NO USERDEF1.doNotLinkIt=1 #ACT+翻译不存在 USERDEF2<.ACT USERDEF2.doNotLinkIt=1 } }
    问候,

    Jost

    第一个错误在包装中:
    未包装,因此不会生成范围(对于无项目)。显示页面标题的问题来自错误的复制。线路

    1.ACT < 1.NO
    
    1.ACT<1.NO
    
    应该是

    1.ACT < .1.NO
    
    1.ACT<.1.NO
    
    以防万一,下面是我正在使用的TS配置:

    lib.languageMenu = HMENU
    lib.languageMenu {
      special = language
      special.value = 0,1
    
      1 = TMENU
      1 {
        wrap = <ul class="langMenu">|</ul>
        noBlur = 1
        NO = 1
        NO {
          linkWrap = <li class="menu-item normal">|</li>
    
          stdWrap.override = English || Deutsch
          stdWrap.htmlSpecialChars = 1
        }
    
        ACT < .NO
        ACT {
          doNotLinkIt = 1
          linkWrap = <li class="menu-item active">|</li>
        }
    
        # NO + Translation doesn't exist
        USERDEF1 < .NO
        USERDEF1.doNotLinkIt = 1
    
        # ACT + Translation doesn't exist
        USERDEF2 < .ACT
        USERDEF2.doNotLinkIt = 1
      }
    }
    
    lib.languageMenu=humenu
    语言菜单{
    特殊=语言
    特殊值=0,1
    1=t菜单
    1 {
    wrap=
      noBlur=1 否=1 没有{ linkWrap=
    • |
    • stdWrap.override=英语| |德语 stdWrap.htmlSpecialChars=1 } 第号法案 表演{ doNotLinkIt=1 linkWrap=
    • |
    • } #不存在+翻译 USERDEF1<.NO USERDEF1.doNotLinkIt=1 #ACT+翻译不存在 USERDEF2<.ACT USERDEF2.doNotLinkIt=1 } }
      问候,

      Jost

      在此处使用标志图标进行检查

      lib.languageMenu = HMENU
      lib.languageMenu{
      
           special = language
           special.value = 0,1
           protectLvar = 1
           special.normalWhenNoLanguage = 0
          # wrap = <div class="language"><ul>|</ul></div>
           1 = TMENU
           1 {
             NO = 1
             NO {
      
      
              # linkWrap = <li class="in-active">|</li> || <li class="in-active">|</li>
               stdWrap.override = {$germanLabel}<img alt="" src="typo3conf/ext/website_lctech/Resources/Public/images/german.png">|| {$englishLabel}<img alt="" src="typo3conf/ext/website_lctech/Resources/Public/images/english.png">
               doNotLinkIt = 1
               stdWrap.typolink.parameter.data = page:uid
               stdWrap.typolink.additionalParams = &L=0 || &L=1
               stdWrap.typolink.addQueryString = 1
               stdWrap.typolink.ATagParams =class="InActive"
               stdWrap.typolink.addQueryString.exclude = id,cHash,no_cache
               stdWrap.typolink.addQueryString.method = GET
               stdWrap.typolink.useCacheHash = 0
               stdWrap.typolink.no_cache = 0
               stdWrap.htmlSpecialChars = 0
      
      #         normalWhenNoLanguage = 0
             }
             ACT = 1
             ACT < .NO
             ACT.stdWrap.typolink.ATagParams =class="Active"
             ACT.stdWrap.htmlSpecialChars = 0
      
      
      
           #  USERDEF1 < .NO
           #  USERDEF1.doNotLinkIt = 0
          }
      }
      
      lib.languageMenu=humenu
      语言菜单{
      特殊=语言
      特殊值=0,1
      protectLvar=1
      special.normalWhenNoLanguage=0时
      #包裹=
        |
      1=t菜单 1 { 否=1 没有{ #linkWrap=
    • |
    • stdWrap.override={$germanLabel}|{$englishLabel} doNotLinkIt=1 stdWrap.typolink.parameter.data=页面:uid stdWrap.typlink.additionalParams=&L=0 | |&L=1 stdWrap.typolink.addQueryString=1 stdWrap.typolink.ATagParams=class=“非活动” stdWrap.typolink.addQueryString.exclude=id,cHash,无缓存 stdWrap.typolink.addQueryString.method=GET stdWrap.typolink.useCacheHash=0 stdWrap.typolink.no_缓存=0 stdWrap.htmlSpecialChars=0 #当非语言=0时为normal } ACT=1 第号法案 ACT.stdWrap.typolink.ATagParams=class=“活动” ACT.stdWrap.htmlSpecialChars=0 #USERDEF1<.NO #USERDEF1.doNotLinkIt=0 } }
      用标志图标检查此处

      lib.languageMenu = HMENU
      lib.languageMenu{
      
           special = language
           special.value = 0,1
           protectLvar = 1
           special.normalWhenNoLanguage = 0
          # wrap = <div class="language"><ul>|</ul></div>
           1 = TMENU
           1 {
             NO = 1
             NO {
      
      
              # linkWrap = <li class="in-active">|</li> || <li class="in-active">|</li>
               stdWrap.override = {$germanLabel}<img alt="" src="typo3conf/ext/website_lctech/Resources/Public/images/german.png">|| {$englishLabel}<img alt="" src="typo3conf/ext/website_lctech/Resources/Public/images/english.png">
               doNotLinkIt = 1
               stdWrap.typolink.parameter.data = page:uid
               stdWrap.typolink.additionalParams = &L=0 || &L=1
               stdWrap.typolink.addQueryString = 1
               stdWrap.typolink.ATagParams =class="InActive"
               stdWrap.typolink.addQueryString.exclude = id,cHash,no_cache
               stdWrap.typolink.addQueryString.method = GET
               stdWrap.typolink.useCacheHash = 0
               stdWrap.typolink.no_cache = 0
               stdWrap.htmlSpecialChars = 0
      
      #         normalWhenNoLanguage = 0
             }
             ACT = 1
             ACT < .NO
             ACT.stdWrap.typolink.ATagParams =class="Active"
             ACT.stdWrap.htmlSpecialChars = 0
      
      
      
           #  USERDEF1 < .NO
           #  USERDEF1.doNotLinkIt = 0
          }
      }
      
      lib.languageMenu=humenu
      语言菜单{
      特殊=语言
      特殊值=0,1
      protectLvar=1
      special.normalWhenNoLanguage=0时
      #包裹=
        |
      1=t菜单 1 { 否=1 没有{ #linkWrap=
    • |
    • stdWrap.override={$germanLabel}|{$englishLabel} doNotLinkIt=1 stdWrap.typolink.parameter.data=页面:uid stdWrap.typlink.additionalParams=&L=0 | |&L=1 stdWrap.typolink.addQueryString=1 stdWrap.typolink.ATagParams=class=“非活动” stdWrap.typolink.addQueryString.exclude=id,cHash,无缓存 stdWrap.typolink.addQueryString.method=GET stdWrap.typolink.useCacheHash=0 stdWrap.typolink.no_缓存=0 stdWrap.htmlSpecialChars=0 #当非语言=0时为normal } ACT=1 第号法案 ACT.stdWrap.typolink.ATagParams=class=“活动” ACT.stdWrap.htmlSpecialChars=0 #USERDEF1<.NO #USERDEF1.doNotLinkIt=0 } }
      我试着使用
      1.ACT<.1.不
      ,但这对我来说并不奏效。但现在我使用了你的代码,它可以工作了。谢谢是的,由于某种原因,
      1.ACT<1.NO
      中不需要点,但在
      ACT<.NO
      中需要点。也许我需要阅读一下这个语法……我试着使用
      1.ACT<.1.不
      ,但这对我来说并不奏效。但现在我使用了你的代码,它可以工作了。谢谢是的,由于某种原因,
      1.ACT<1.NO
      中不需要点,但在<