是否可以将父链接插入子菜单列表。它应该是这样的:
Parent link
|--Parent link
|--Subpage link1
|--Subpage link
我需要这个用于bootstrap菜单,其中每个父链接只能被点击(以扩展子菜单)
我的菜单如下:
lib.header-menu = HMENU
lib.header-menu.entryLevel = 0
lib.header-menu {
1 = TMENU
1 {
wrap = <nav class="navbar navbar-default" role="navigation"><ul class="nav navbar-nav">|</ul></nav>
expAll = 1
NO {
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
stdWrap.htmlSpecialChars = 1
accessKey = 1
}
IFSUB < .NO
IFSUB = 1
IFSUB {
wrapItemAndSub = <li class="dropdown">|</li>
linkWrap= |<span class="caret"></span>
ATagParams = class="dropdown-toggle" role="button" data-toggle="dropdown"
ATagBeforeWrap = 1
stdWrap.htmlSpecialChars = 1
}
ACTIFSUB < .IFSUB
ACTIFSUB {
wrapItemAndSub = <li class="active dropdown">|</li>
}
ACT < .NO
ACT = 1
ACT {
wrapItemAndSub = <li class="active">|</li>
}
CURIFSUB < .IFSUB
CURIFSUB = 1
CURIFSUB {
wrapItemAndSub = <li class="active dropdown">|</li>
}
}
# second level
2 = TMENU
2.wrap = <ul class="dropdown-menu">|</ul>
2{
expAll = 1
NO{
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
}
IFSUB = 1
IFSUB{
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
}
}
}
答案 0 :(得分:0)
一种解决方案是包含一个附加子页面,其中包含父页面的快捷方式。这需要手工劳动,但可以忘记。
你也可以使用typoscript来完成它。我已经更改了第二个项目的包装器,因此它被构建为具有多个部分的COA,并创建了一个typolink to field:pid(它的父项)。通过将文本值留空,typolink将创建一个链接到链接页面标题的链接。解决了在旅途中检索父页面标题的问题。
lib.header-menu-nieuw = HMENU
lib.header-menu-nieuw.entryLevel = 0
lib.header-menu-nieuw {
1 = TMENU
1 {
wrap = <nav class="navbar navbar-default" role="navigation"><ul class="nav navbar-nav">|</ul></nav>
expAll = 1
NO {
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
stdWrap.htmlSpecialChars = 1
accessKey = 1
}
IFSUB < .NO
IFSUB = 1
IFSUB {
wrapItemAndSub = <li class="dropdown">|</li>
linkWrap= |<span class="caret"></span>
ATagParams = class="dropdown-toggle" role="button" data-toggle="dropdown"
ATagBeforeWrap = 1
stdWrap.htmlSpecialChars = 1
}
ACTIFSUB < .IFSUB
ACTIFSUB {
wrapItemAndSub = <li class="active dropdown">|</li>
}
ACT < .NO
ACT = 1
ACT {
wrapItemAndSub = <li class="active">|</li>
}
CURIFSUB < .IFSUB
CURIFSUB = 1
CURIFSUB {
wrapItemAndSub = <li class="active dropdown">|</li>
}
}
# second level
2 = TMENU
2.stdWrap.wrap.stdWrap.cObject = COA
2.stdWrap.wrap.stdWrap.cObject {
10 = TEXT
10.typolink.parameter = {field:pid}
10.typolink.parameter.insertData = 1
10.wrap = <ul class="dropdown-menu"><li>|</li>
20 = TEXT
20.value = |</ul>
}
2{
expAll = 1
NO{
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
}
IFSUB = 1
IFSUB{
ATagTitle.field = title
wrapItemAndSub = <li>|</li>
}
}
}
这会创建一个块,其中每个父页面也自动成为第一个子页面项目。