TYPO3 菜单 - 子菜单列表上的重复父链接 [英] TYPO3 menu - duplicate parent link on submenu list

查看:28
本文介绍了TYPO3 菜单 - 子菜单列表上的重复父链接的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以将父链接插入子菜单列表.它应该是这样的:

Is it possible to insert the parent link to sub menu list. It should looks like this:

Parent link
|--Parent link
|--Subpage link1
|--Subpage link

我需要这个用于引导菜单,其中每个父链接都只能点击(以展开子菜单)

I need this for bootstrap menu where every parent link is only clickable (to expand the sub menu)

我的菜单如下所示:

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>
        }
    }
}

推荐答案

一个解决方案是包含一个额外的子页面,其中包含一个指向父页面的快捷方式.不过这需要体力劳动,并且可以被遗忘.

One solution is to include an additional subpage with a shortcut to the parent page. This requires manual labour though and can be forgotten.

您也可以使用排版来完成它.我已经更改了第二项的包装器,因此它被构建为包含多个部分的 COA,并创建了一个指向 field:pid(其父项)的拼写链接.通过将文本值留空,typolink 将创建一个带有所链接页面标题的链接.解决在旅途中检索父页面标题的问题.

You could also use typoscript to get it done. I've changed the wrapper on the 2nd item so it's build up as COA with several parts, and created a typolink to field:pid (its parent). By leaving the text value empty, typolink will create a link with the title of the page being linked to. Solving the problem of retrieving the title of the parent page on the go.

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>
        }
    }
}

这会创建一个块,其中每个父页面也自动成为第一个子页面项.

This creates a block where each parent page automatically is the first subpage item as well.

这篇关于TYPO3 菜单 - 子菜单列表上的重复父链接的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆