TYPO3 8.7.9 - 带分割菜单行的折叠式菜单

时间:2017-11-09 20:04:47

标签: html menu typo3 typoscript

对于移动导航,我使用带有以下简单TypoScript的手风琴菜单:

lib.testMenu = HMENU
lib.testMenu {
  entryLevel = 0
  wrap = <div id="mobile_menu">|</div>
    1 = TMENU
    1 {
      expAll = 1
      IFSUB = 1
      IFSUB {
        wrapItemAndSub = <li class="has-sub">|</li>
    }

    wrap = <ul>|</ul>
    NO.wrapItemAndSub = <li>|</li>
  }

   2 < .1
   3 < .1
   3 {
     IFSUB {
        wrapItemAndSub = <li class="has-sub">|</li>
    }
  }
  4 < .3
}

前两个级别通常只有头条新闻。班级&#39;具有子&#39;允许您使用jquery打开下一个级别。在第3和第4级有内容。因此,我需要一个菜单​​行,其中包含相应级别的网页链接和打开其下方级别的链接。 它应该是这样的:

&#39;当前层的链接|&#39;箭头&#39; (链接打开下面的图层)。&#39;

    <li>link-of-the-current-level</li> 
    <li class="has-sub">' Arrow' (link to open the layer below)' ><ul><li> (...)</li><> (...)</li></ul></li>

如果没有较低级别,则应该没有

<li class="has-sub"> (...)</li>.

尽管有很多尝试,但遗憾的是我没有接近解决方案,因此我对任何提示感到高兴。

1 个答案:

答案 0 :(得分:1)

如果我理解正确,最终结果应为:

<li>
  <a href="">Title of the page</a>
</li>
<li class="has-sub">
  'Arrow'
    <ul>
      <li> (...)</li>
      <li> (...)</li>
   </ul>
</li>

我是对的吗?

我认为它应该是:

lib.mainmenu = HMENU
lib.mainmenu {
  entryLevel = 0
  wrap = <div id="mobile_menu">|</div>
    1 = TMENU
    1 {
        wrap = <ul>|</ul>
        expAll = 1
        NO.wrapItemAndSub = <li class="first">|</li>      
        IFSUB = 1
        IFSUB {
            wrapItemAndSub = <li class="first has-sub">|</li>
        }   
    }

   2 < .1
   2.NO.wrapItemAndSub = <li class="second">|</li>
   2.IFSUB.wrapItemAndSub = <li class="second has-sub">|</li>
   3 < .1
   3.NO.wrapItemAndSub = <li class="third">|</li>
   3 {
     IFSUB {

        wrapItemAndSub = <li class="third hasarrow">|</li>
        allWrap = |</li><li class="third has-sub">'Arrow'
    }
  }
  4 < .3
  4.NO.wrapItemAndSub = <li class="fourth">|</li>
  4.IFSUB.wrapItemAndSub = <li class="fourth hassub">|</li>
  4.IFSUB.allWrap = |
}

也许不是最干净的解决方案:)我猜有些TypoScript专家可以做得更好:)。

我刚刚添加了一些课程,以便更好地了解我正在打印的级别。如果我理解正确,请告诉我,这对您有用。