2014-09-26 1 views
1

현재 활성화 된 메뉴 항목에 하위 메뉴 (ACTIFSUB)가있는 경우 wrapTMENU으로 변경됩니다. 다음은 활성 메뉴 항목에 하위 메뉴가있는 경우 TMENU 줄 바꾸기

내 typoscript의 발췌 한 것입니다 : 당신이 expAll을 사용하는 경우로

lib.navigation = HMENU 
lib.navigation { 

1 = TMENU 
1 { 

    wrap = <ul class="m-navigation-list">|</ul> 

    # if the current active menu item has a submenu, change the wrap to this: 
    # wrap = <ul class="m-navigation-list m-navigation-list--parent">|</ul> 

    ACTIFSUB = 1 
    ACTIFSUB { 
     wrapItemAndSub = <li class="m-navigation-item m-navigation-link--parent m-navigation-link--ladder">|</li> 

     # overwrite the wrap of the TMENU? 
    } 

} 

답변

2

조심, 하위 메뉴는 항상 인쇄되고 그 결과 재정으로 항상 사용됩니다.

다음

예를 노력하고 있습니다 :

lib.navigation = HMENU 
lib.navigation { 
    wrap = <ul>|</ul> 
    wrap.override = <ul class="override">|</ul> 
    entryLevel = 0 
    1 = TMENU 
    1 { 
     expAll = 0 
     NO.allWrap = <li> | </li> 
     ACT = 1 
     ACT.allWrap = <li>|</li> 
     ACTIFSUB = 1 
     ACTIFSUB { 
      allWrap= <li class="sub">|</li> 
      before.cObject = LOAD_REGISTER 
      before.cObject.actsubmenu = TEXT 
      before.cObject.actsubmenu.value = 1 
     } 
    } 
    wrap.override.if.isTrue.data = REGISTER:actsubmenu 
} 
+0

와우, 놀라운! 감사! 'REGISTER'는 트릭을했습니다! 그래도 하나의 문제가있었습니다 : 내 활성 메뉴 포인트 ('ACTIFSUB')는 링크 텍스트를 출력하지 않습니다. 하지만 난이 질문에 같이'before.cObject = LOAD_REGISTER'를 사용하여 해결할 수 있습니다 : http://stackoverflow.com/q/17569034/723769 – Jona

+1

맞아, 나는 테스트하지 않았고 cObject가 무시할 것이라고 생각하지 않았다. 기본 텍스트 .. 위의 코드를 업데이트하겠습니다. –

관련 문제