---
title: "HTML erst dann ausgeben, wenn HMENU Objekte enthält"
url: "https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt"
source: "typo3.net"
tags: ["TYPO3","Menüs","Frage"]
created: "2008-04-06"
last_reply: "2008-04-09"
replies: 4
solved: false
page: 1
pages: 1
lang: "de"
---

# HTML erst dann ausgeben, wenn HMENU Objekte enthält

TYPO3 › Menüs · 4 Antworten · gestartet 2008-04-06

## Eröffnungsbeitrag

**jhjp** · 2008-04-06 · [Beitrag #1](https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt/1)

Hallo,
ich komm mit TypoScript nicht mehr weiter. Hab ein COA mit 10 = HMENU und 20 = TEXT.
So wie im Code unten, wird der Text (20) ja immer ausgegeben. Ich möchte aber, dass der Text nur dann angezeigt wird, wenn das HMENU auch angezeigt wird (wenn dieses also Elemente enthält)

Wie geht das???

```typoscript
lib.subsubnavi = COA
lib.subsubnavi.10 = HMENU
lib.subsubnavi.10.entryLevel = 3
lib.subsubnavi.10.1 = TMENU
lib.subsubnavi.10.1 {
  collapse = 0
  expAll = 0
  noBlur = 1
  wrap = <ul id="subsubnavi1">|</ul>
  NO{  
    wrapItemAndSub = <li>|</li> |*| <li>|</li> |*| <li class="last">|</li>
    linkWrap = |
    ATagTitle.cObject = TEXT
    ATagTitle.cObject.field = title
    ATagTitle.cObject.dataWrap = |
  }     
  ACT < .NO
  ACT = 1
  ACT{
    linkWrap = |
    ATagParams = class="active"
    ATagTitle.cObject = TEXT
    ATagTitle.cObject.field = title
    ATagTitle.cObject.dataWrap = |
  }
}

lib.subsubnavi.20 = TEXT
lib.subsubnavi.20.value = <div class="clearerborderline"></div>
```

Hoffe, dass mir jmd helfen kann...
Danke und viele Grüße
Beni

## Antworten

### [#2](https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt/2) · brokemeister · 2008-04-06

Probiere mal so was in die Richtung, ich weiß allerdings nicht, ob es auf Aufhieb funktioniert...

```typoscript
lib.subsubnavi = HMENU
lib.subsubnavi {
...
required = 1
stdWrap.wrap = <ul id="subsubnavi1">|</ul>
stdWrap.append = TEXT 
stdWrap.append.value = <div class="clearerborderline"></div>
...
}
```

So sollte auch das < u l > nur auf, wenn was drin ist.

Ansonsten einfach mal in der TS-Referenz nachschauen...

### [#3](https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt/3) · just2b · 2008-04-06

Hallo,

verzicht auf das COA und gib das ganze hier an:
NO.wrap = <ul>|</ul><div id="deindiv"></div>

lg georg

### [#4](https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt/4) · jhjp · 2008-04-06

Danke für eure Antworten... es funktioniert aber noch nicht ganz...

Hier mal das TS in voller Länge:

```typoscript
lib.subsubnavi = COA
lib.subsubnavi.10 = HMENU
lib.subsubnavi.10.entryLevel = 3
lib.subsubnavi.10.1 = TMENU
lib.subsubnavi.10.1 {
  collapse = 0
  expAll = 0
  noBlur = 1
  wrap = <ul id="subsubnavi1">|</ul>
  NO{  
    wrapItemAndSub = <li>|</li> |*| <li>|</li> |*| <li class="last">|</li>
    linkWrap = |
    ATagTitle.cObject = TEXT
    ATagTitle.cObject.field = title
    ATagTitle.cObject.dataWrap = |
  }     
  ACT < .NO
  ACT = 1
  ACT{
    linkWrap = |
    ATagParams = class="active"
    ATagTitle.cObject = TEXT
    ATagTitle.cObject.field = title
    ATagTitle.cObject.dataWrap = |
  }
}
lib.subsubnavi.20 = HMENU
lib.subsubnavi.20.entryLevel = 4
lib.subsubnavi.20.1 = TMENU
lib.subsubnavi.20.1 < lib.subsubnavi.10.1
lib.subsubnavi.20.1.wrap = <ul id="subsubnavi2">|</ul>

lib.subsubnavi.30 = HMENU
lib.subsubnavi.30.entryLevel = 5
lib.subsubnavi.30.1 = TMENU
lib.subsubnavi.30.1 < lib.subsubnavi.10.1
lib.subsubnavi.30.1.wrap = <ul id="subsubnavi3">|</ul>

lib.subsubnavi.40 = TEXT
lib.subsubnavi.40.value = <div class="clearerborderline"></div>
```

Wenn es keine Elemente gibt, die als Navigationspunkte angezeigt werden können, soll gar kein HTML ausgegeben werden.

Wenn nur im entryLevel 3 Elemente vorhanden sind soll das HTML so aussehen:
<ul id="subsubnavi1">...</ul><div class="clearerborderline"></div>

Wenn im entryLevel 4 auch Elemente sind, solld as HTML so aussehen:
<ul id="subsubnavi1">...</ul><ul id="subsubnavi2">...</ul><div class="clearerborderline"></div>

usw...

das da: <div class="clearerborderline"></div> soll einfach hinten angehängt werden, sobald Navigationselemente ausgegeben werden

### [#5](https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt/5) · jhjp · 2008-04-09

Habs selber rausgekriegt.
und zwar mit der Condition: [treeLevel = 3,4,5]

jaja rtfm...  :D

---

Quelle: „HTML erst dann ausgeben, wenn HMENU Objekte enthält“, typo3.net, https://www.typo3.net/d/75707-html-erst-dann-ausgeben-wenn-hmenu-objekte-enthaelt
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
