Zum Inhalt springen

Subpart bei leerem Menü

Erstellt am 8. August 2003 · 1 Antwort · letzte Antwort am 9. August 2003

Tags: Frage

Kreismeister ·

Hallo!

Ich habe ein Menü, daß aus dem Template gebaut wird. Es ist ein Level 2 Menü mit Level 3 als Untermenü des aktiven Menüpunktes. Allerdings habe ich jetzt daß Problem, daß da unnötiger Platz entsteht, wenn eine Level 2 Seite keine Unterseiten hat.

Kann man irgendwie per Bedingung abfragen, ob ein Menü keine Menüpunkte enthält und dann abhängig vom Ergebnis einen subpart komplett mit "" oder dem Menü ersetzen?

# Setting up Level 3 menu, based on template!
temp.L3menuItems = HMENU
temp.L3menuItems.entryLevel = 2
temp.L3menuItems.1 = TMENU
temp.L3menuItems.1.NO {
  before.cObject < temp.mainTemplate
  before.cObject {
    workOnSubpart = SUB_L3MENU_ITEM
    marks.MENU_TITLE = TEXT
    marks.MENU_TITLE.field = title
    wraps.LINK = TEXT
    wraps.LINK {
      value = |
      typolink.parameter.field = uid
    }
  }
  doNotShowLink = 1
}
temp.L3menuItems.1.ACT < temp.L3menuItems.1.NO
temp.L3menuItems.1.ACT = 1
temp.L3menuItems.1.ACT.before.cObject.workOnSubpart = SUB_L3MENU_ITEM_ACT
# build the whole menu
temp.L3menu < temp.mainTemplate
temp.L3menu {
  workOnSubpart = SUB_L3MENU
  subparts.SUB_L3MENU_ALL_ITEMS < temp.L3menuItems
}

# Setting up Level 2 menu, based on template!
temp.L2menu = HMENU
temp.L2menu.entryLevel = 1
temp.L2menu.1 = TMENU
temp.L2menu.1.NO {
  before.cObject < temp.mainTemplate
  before.cObject {
    workOnSubpart = SUB_L2MENU_ITEM
    subparts.SUB_L3MENU < temp.L3menu
    marks.MENU_TITLE = TEXT
    marks.MENU_TITLE.field = title
    wraps.LINK = TEXT
    wraps.LINK {
      value = |
      typolink.parameter.field = uid
    }
  }
  doNotShowLink = 1
}
temp.L2menu.1.ACT < temp.L2menu.1.NO
temp.L2menu.1.ACT = 1
temp.L2menu.1.ACT.before.cObject.workOnSubpart = SUB_L2MENU_ITEM_ACT
<table>

<!-- ###SUB_L2MENU### start -->

<!-- ###SUB_L2MENU_ITEM### start -->
<tr>
  <td class="icon"><img src="fileadmin/templates/images/leftarrow.gif" width="3" height="5"></td>
  <td class="text"><!--###LINK###-->###MENU_TITLE###<!--###LINK###--></td>
</tr>
<tr >
  <td class="separator"><img src="fileadmin/templates/images/spacer.gif" width="20" height="1"></td>
  <td class="separator"><img src="fileadmin/templates/images/spacer.gif" width="130" height="1"></td>
</tr>
<!-- ###SUB_L2MENU_ITEM### end -->

<!-- ###SUB_L2MENU_ITEM_ACT### start -->
<tr>
  <td class="icon"><img src="fileadmin/templates/images/leftarrow.gif" width="3" height="5"></td>
  <td class="text"><!--###LINK###--><strong>###MENU_TITLE###</strong><!--###LINK###--></td>
</tr>

<!-- ###SUB_L3MENU### start -->
<tr>
  <td class="icon"><img src="fileadmin/templates/images/spacer.gif" width="3" height="5"></td>
  <td class="text">
    <table class="l3menu" cellspacing="0">
      <!-- ###SUB_L3MENU_ALL_ITEMS### start -->
      <!-- ###SUB_L3MENU_ITEM### start -->
      <tr>
        <td><!--###LINK###-->###MENU_TITLE###<!--###LINK###--></td>
      </tr>
      <!-- ###SUB_L3MENU_ITEM### end -->
      <!-- ###SUB_L3MENU_ITEM_ACT### start -->
      <tr>
        <td><!--###LINK###--><strong>###MENU_TITLE###</strong><!--###LINK###--></td>
      </tr>
      <!-- ###SUB_L3MENU_ITEM_ACT### end -->
      <!-- ###SUB_L3MENU_ALL_ITEMS### end -->
    </table>
  </td>
</tr>
<!-- ###SUB_L3MENU### end -->

<tr >
  <td class="separator"><img src="fileadmin/templates/images/spacer.gif" width="20" height="1"></td>
  <td class="separator"><img src="fileadmin/templates/images/spacer.gif" width="130" height="1"></td>
</tr>
<!-- ###SUB_L2MENU_ITEM_ACT### end -->

<!-- ###SUB_L2MENU### end -->

<tr>
  <td colspan="2">&nbsp;</td>
</tr>

<tr>
  <td colspan="2" height="100%">

    <table class="content" cellspacing="2">
      <tr>
        <td>
          <!-- ###SUB_CONTENT_MARGIN### start -->
          <!-- ###SUB_HEADER2### -->
          <table class="headline" cellspacing="0">
            <tr>
              <td class="headline"><b>###MARK_HEADER###</b></td>
            </tr>
            <tr><td class="separator"><img src="fileadmin/templates/images/spacer.gif" width="1" height="1"></td></tr>
            <tr><td><img src="fileadmin/templates/images/spacer.gif" width="1" height="2"></td></tr>
          </table>
          <!-- ###SUB_HEADER2### -->
          <!-- ###SUB_CONTENT_MARGIN### end -->
        </td>
      </tr>
    </table>

  </td>
</tr>

</table>
Kreismeister ·

OK guys, ACTIFSUB is you friend. Das ist nochmal eine Unterscheidung. Typo3 ist geil, hätte nicht gedacht, daß es so einfach ist.

# Setting up Level 2 menu, based on template!
temp.L2menu = HMENU
temp.L2menu.entryLevel = 1
temp.L2menu.1 = TMENU
temp.L2menu.1.NO {
  before.cObject < temp.mainTemplate
  before.cObject {
    workOnSubpart = SUB_L2MENU_ITEM
    marks.MENU_TITLE = TEXT
    marks.MENU_TITLE.field = title
    wraps.LINK = TEXT
    wraps.LINK {
      value = |
      typolink.parameter.field = uid
    }
  }
  doNotShowLink = 1
}
temp.L2menu.1.ACT < temp.L2menu.1.NO
temp.L2menu.1.ACT = 1
temp.L2menu.1.ACT.before.cObject.workOnSubpart = SUB_L2MENU_ITEM_ACT
temp.L2menu.1.ACT.before.cObject.subparts.SUB_L3MENU = HTML
temp.L2menu.1.ACT.before.cObject.subparts.SUB_L3MENU.value =
temp.L2menu.1.ACTIFSUB < temp.L2menu.1.ACT
temp.L2menu.1.ACTIFSUB.before.cObject.subparts.SUB_L3MENU < temp.L3menu