从uID页

时间:2019-09-06 10:04:29

标签: typo3 typo3-7.6.x

我有必要创建一个HMENU,它从某个页面的uid开始,并沿该页面下的所有页面递归进行。我尝试从“特殊”菜单“列表”开始,该页面仅列出该页面,但没有用。 这可能吗?有想法吗?

预先感谢您的任何建议

编辑: 那就是我的解决方案

lib.footmenu >
lib.footmenu = HMENU
lib.footmenu.special = directory
lib.footmenu.special.value = 132
lib.footmenu.excludeUidList = 287
lib.footmenu {
    1= TMENU
    1.expAll= 1
    1.wrap = <ul class="menufoot1">|</ul>

    1.NO{
        wrapItemAndSub = <li class="level1">|</li>
        1.ATagTitle.field = title
        1.ATagParams =
    }

    2 < .1
    2.wrap = <ul class="menufoot2">|</ul>

    3 < .2
    3.wrap = <ul class="menufoot3">|</ul>

    4 < .3
    4.wrap = <ul class="menufoot3">|</ul>

    5 < .4
    5.wrap = <ul class="menufoot3">|</ul>

    6 < .5
    6.wrap = <ul class="menufoot3">|</ul>


}

现在我还有一个问题。我想排除某个uid下的所有页面(这是事件页面,里面有太多页面)。我尝试使用excludeUidList,但显然它也忽略了提及的页面(uid = 287),但我只想忽略其子页面。

3 个答案:

答案 0 :(得分:3)

我愿意

special = directory

您应该添加

expAll = 1

到TMENU的第一级(然后将其复制到子级)。

详细了解TMENU中的特殊关键字: https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/ContentObjects/Hmenu/Index.html#the-special-property

答案 1 :(得分:1)

您只需要在TMENU定义中添加更多级别即可。

请参见文档中的属性“ 1/2/3”:https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/ContentObjects/Hmenu/Index.html

如果您想一次查看更多级别,则应使用expAll属性:https://docs.typo3.org/m/typo3/reference-typoscript/master/en-us/MenuObjects/Tmenu/Index.html

答案 2 :(得分:0)

我认为,@ BastianBalthasarBux正确指出的问题是缺少expAll = 1

我认为您的TypoScript代码可以通过以下方式简化:(我以this one为例):

lib.footmenu > 
lib.footmenu = HMENU
lib.footmenu.special = list
lib.footmenu.special.value = 132

lib.footmenu {
  1 = TMENU
  1.expAll = 1 
  1.wrap = <ul class="menufoot1">|</ul>
  1.NO {
    wrapItemAndSub = <li>|</li> 
    ATagTitle.field = title
    ATagParams =
  } 
  2 < .1
  2.wrap = <ul class="menufoot2">|</ul>

  3 < .1
  3.wrap = <ul class="menufoot3">|</ul>
}