2017-07-13 41 views
0

中選中頁面頁面選項中的複選框,則覆蓋allWrap如果選中頁面選項中的複選框,我喜歡覆蓋typoscript菜單定義中的allWrap選項。以下頁面應該突出顯示,所以我需要爲列表標記添加一個額外的CSS類。如果在菜單

在我的頁面選項中,我有一個名爲tx_mask_highlight_nav的布爾值。

所以在我的流體模板中,我可以使用{page.tx_mask_highlight_nav}

但我需要這個在我的typoscript菜單定義。

我目前的做法是這樣的:

lib.menu_main = COA 
lib.menu_main { 
    10 = HMENU 
    10 { 
    entryLevel = 0 
    wrap = | 

    1 = TMENU 
    1 { 
     expAll = 1 
     NO.allWrap = <li>|</li> 
     NO.ATagTitle.field = abstract // description // title 

     NO.allWrap.override = <li class="menu-item--bold">|</li> 
     NO.allWrap.override.if { 
     isTrue.data = page:tx_mask_highlight_nav 
     } 

     ACT = 1 
     ACT.wrapItemAndSub = <li class="active">|</li> 
     ACT.ATagTitle.field = abstract // description // title 

     IFSUB = 1 
     IFSUB.wrapItemAndSub = <li>|</li> 
     IFSUB.ATagTitle.field = abstract // description // title 

     ACTIFSUB = 1 
     ACTIFSUB.wrapItemAndSub = <li class="active">|</li> 
     ACTIFSUB.ATagTitle.field = abstract // description // title 
    } 

    1 { 
     wrap = <ul class="dropdown menu menu--main" data-dropdown-menu>|</ul> 
    } 

    2 < .1 
    2 { 
     wrap = <ul class="menu vertical">|</ul> 
    } 

    3 < .2 
    4 < .3 
    5 < .4 
    } 
} 

我試過幾個其他的事情,比如這個:

NO.allWrap.override = <li class="menu-item--bold">|</li> 
No.allWrap.override.if { 
    value = page:tx_mask_highlight_nav 
    equals = 1 
} 

但它不工作。也許我無法訪問page:tx_mask_highlight_nav

非常感謝您的幫助!

+0

嘗試'NO.allWrap.override.if.isTrue.field = tx_mask_highlight_nav' –

回答

1

用字段替換數據。使用NO.allWrap.override.if.isTrue.field = tx_mask_highlight_nav

完整的TypoScript

lib.menu_main = COA 
lib.menu_main { 
    10 = HMENU 
    10 { 
    entryLevel = 0 
    wrap = | 

    1 = TMENU 
    1 { 
     expAll = 1 
     NO.allWrap = <li>|</li> 
     NO.ATagTitle.field = abstract // description // title 

     NO.allWrap.override = <li class="menu-item--bold">|</li> 
     NO.allWrap.override.if.isTrue.field = tx_mask_highlight_nav 

     ACT = 1 
     ACT.wrapItemAndSub = <li class="active">|</li> 
     ACT.ATagTitle.field = abstract // description // title 

     IFSUB = 1 
     IFSUB.wrapItemAndSub = <li>|</li> 
     IFSUB.ATagTitle.field = abstract // description // title 

     ACTIFSUB = 1 
     ACTIFSUB.wrapItemAndSub = <li class="active">|</li> 
     ACTIFSUB.ATagTitle.field = abstract // description // title 
    } 

    1 { 
     wrap = <ul class="dropdown menu menu--main" data-dropdown-menu>|</ul> 
    } 

    2 < .1 
    2 { 
     wrap = <ul class="menu vertical">|</ul> 
    } 

    3 < .2 
    4 < .3 
    5 < .4 
    } 
} 
+0

這工作得很好。謝謝! –