如何在Typo3中将菜单拆分为多个列?

时间:2017-08-16 07:58:43

标签: twitter-bootstrap typo3 typoscript fluid

我在Typo3中有一个节点,里面有很多页面,我想在4列中显示一个菜单。列的排序应该是从左到右,然后环绕。

像这样:

Col1        Col2       Col3       Col4
 A            B          C          D
 E            F          G

1 个答案:

答案 0 :(得分:0)

在我的解决方案中(在Typo3 LTS 6.2中完成,但也适用于所有当前版本),我使用这种方法来实现列。请注意,格式化是在记住引导程序的情况下完成的:

# Menu with 4 columns
lib.columnMenu = COA
lib.columnMenu {

  10.wrap = <div class="col-sm-3"><ul> | </ul></div>
  10 = HMENU
  10.special = directory
  10.special.value = INSERT YOUR PAGE ID HERE

  10.1 = TMENU
  10.1.NO{
    allWrap=<li>|</li>

    stdWrap.if.isFalse.prioriCalc=1
    stdWrap.if.isFalse.cObject=TEXT
    stdWrap.if.isFalse.cObject.insertData=1
    stdWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+3)%4

    allWrap.if.isFalse.cObject=TEXT
    allWrap.if.isFalse.prioriCalc=1
    allWrap.if.isFalse.cObject.insertData=1
    allWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+3)%4
    }

  20 < .10
  20.wrap = <div class="col-sm-3"><ul> | </ul></div>

  20.1.NO{
    allWrap = <li>|</li>
    stdWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+2)%4
    allWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+2)%4
    }

  30 < .10
  30.wrap = <div class="col-sm-3"><ul> | </ul></div>

  30.1.NO{
    allWrap = <li>|</li>
    stdWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+1)%4
    allWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ}+1)%4
    }

  40 < .10
  40.wrap = <div class="col-sm-3"><ul> | </ul></div>

  40.1.NO{
    allWrap = <li>|</li>
    stdWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ})%4
    allWrap.if.isFalse.cObject.value=({register:count_HMENU_MENUOBJ})%4
    }     
  }
}
# End Menu

然后你只需将菜单包含在某个流体模板中,如下所示:

<div class="row mb-20">
  <f:cObject typoscriptObjectPath="lib.columnMenu"/>
</div>