2011-07-05 60 views
2

我是新来的typo3,我必须设置导航。我已经完成了在Timerate找到的教程,并且我已经构建了演示导航(本教程的第2周)。Typoscript导航设置

现在我必须设置一个导航必须是这样的:

Link 1 | Link 2 | Link 3 | Link 4 

背面连接结构如下:

Link 1 
Link 2 
Link 3 (shortcut to sub link 1) 
    Sublink 1 
    Sublink 2 
Link 4 

当我在部分指定整个菜单工作正常通过链接1,链接2和链接4,但没有任何显示,当我点击链接3时。

Sublinks将显示在辅助导航

这里是我有我的根TS模板的Typo脚本(我使用TemplaVoila):

lib.field_topmenu = HMENU 
lib.field_topmenu { 
    special = directory 
    special.value = {$idMain} 
    entryLevel = 2 
    1 = TMENU 
    1.NO = 1 
    1.wrap = <div id="menu"><ul> | </ul></div> 
    1.NO.wrapItemAndSub = <li>|</li> 
    1.ACT < .1.NO 
    1.ACT.ATagParams = class='active' 
    2 < .1 
} 

什么是实现这一目标的最佳方式是什么?

回答

5

很高兴您能加入TYPO3。

据我记忆,special = directory的入门级别没有影响。

这是一个有效的解决方案:

lib.field_topmenu = HMENU 
lib.field_topmenu { 
    special = directory 
    special.value = 1 
    1 = TMENU 
    1.NO = 1 
    1.wrap = <ul> | </ul> 
    1.NO.wrapItemAndSub = <li>|</li> 
    1.ACT < .NO 
    1.ACT.ATagParams = class='active' 
    2 < .1 
} 

您应该删除id=menu因为它会向下反复的水平,因此无效的HTML

下面是我们通常使用的解决方案,它也使用字幕等并为您的导航列表的第一个和最后一个元素添加特殊类:

lib.navi.one = HMENU 
lib.navi.one { 
    1 = TMENU 
    1 { 

     noBlur = 1 
     wrap = <ul>|</ul> 
     NO = 1 
     NO { 
      wrapItemAndSub = <li class="first">|</li> |*| <li>|</li> |*| <li class="last">|</li> 
      altText = subtitle // title 
      title = subtitle // title 
     } 
     CUR < .NO 
     CUR.wrapItemAndSub = <li class="active first">|</li> |*| <li class="active">|</li> |*| <li class="active last">|</li> 
     ACT < .CUR 
    } 
    2 < .1 
    3 < .2 
    4 < .2 
} 

您可以很容易地采用它到目录的起点(并且带走水平3 & 4):

lib.field_topmenu < lib.navi.one 
lib.field_topmenu { 
    special = directory 
    special.value = {$idMain} 
    3 > 
    4 > 
} 
+0

简单明了的答案。我可以证明它有效。 – Mateng

0

aTagParams doesn't工作的快捷方式。你必须把真正的页面放到sys文件夹中,而不是工作。