---
title: "Menü Userfunc und Mehrsprachigkeit"
url: "https://www.typo3.net/d/106525-menue-userfunc-und-mehrsprachigkeit"
source: "typo3.net"
tags: ["TYPO3","Menüs","Frage","PHP"]
created: "2011-07-27"
last_reply: "2011-07-27"
replies: 1
solved: false
page: 1
pages: 1
lang: "de"
---

# Menü Userfunc und Mehrsprachigkeit

TYPO3 › Menüs · 1 Antwort · gestartet 2011-07-27

## Eröffnungsbeitrag

**CrashOverride** · 2011-07-27 · [Beitrag #1](https://www.typo3.net/d/106525-menue-userfunc-und-mehrsprachigkeit/1)

Hallo Gemeinde,

ich habe ein ganz normales TMENU mit 4 Ebenen. Drei Davon werden über eine UserFunc generiert. In der Standardsprache der Seite funktioniert dies alles wunderbar und toll sobald ich aber eine andere Sprache habe wird nur noch eine Ebene generiert (also ges. 2 Ebenen sichtbar) und die Dritte und Vierte ist einfach nicht vorhanden obwohl diese im generierten Array richtig vorhanden wäre? Hilfe?!
Ich bin wirklich für jeden Tip dankbar, ich schlage mich mit diesem Thema schon eine ganze Woche rum und bin genausoweit wie vorher... :-(

Hier mein TS:

```typoscript
lib.leftMenu.20 = HMENU
lib.leftMenu.20 {
  #entryLevel = 2
  wrap = <ul class="leftMenu">|</ul>
  
  1 = TMENU
  1 {
    NO.allWrap = <li class="leftMenu-1">|</li>
    NO.ATagParams = class="leftMenu-1"
    
    ACT = 1
    ACT.allWrap = <li class="leftMenu-1 active">|</li>
    ACT.ATagParams = class="leftMenu-1"
  }

  2 = TMENU
  2 {
    itemArrayProcFunc = user_menuFunc->makeMenuArray
    NO.allWrap = <li class="leftMenu-2">|</li>
    NO.ATagParams = class="leftMenu-2"
    
    ACT = 1
    ACT.allWrap = <li class="leftMenu-2 active">|</li>
    ACT.ATagParams = class="leftMenu-2"
  }

  3 = TMENU
  3 {
    NO.allWrap = <li class="leftMenu-3">|</li>
    NO.ATagParams = class="leftMenu-3"
    
    ACT = 1
    ACT.allWrap = <li class="leftMenu-3 active">|</li>
    ACT.ATagParams = class="leftMenu-3"
  }

  4 = TMENU
  4 {
    NO.allWrap = <li class="leftMenu-4">|</li>
    NO.ATagParams = class="leftMenu-4"
    
    ACT = 1
    ACT.allWrap = <li class="leftMenu-4 active">|</li>
    ACT.ATagParams = class="leftMenu-4"
  }
}
```

Und hier der Array, welcher generiert wird (aktuell hart gecoded zum testen...)

```php
$return = array(
          array(
            "title" => "seite 1", 
            "_OVERRIDE_HREF" => "index.php?id=78", 
            "ITEM_STATE" => "ACT", 
            "_SUB_MENU" => array(
              array(
                "title" => "unterseite", 
                "_OVERRIDE_HREF" => "index.php?id=100", 
                "ITEM_STATE" => "",
              ),
            ),
          ),
        );
```

Das Menü welches zurückgegeben wird sieht wie folgt aus:
Deutsch:
- Menüpunkt 1
--- seite 1
----- unterseite

Englisch:
- Menupoint 1
--- seite 1

Leider fehlt die Seite "unterseite", benötige ich noch irgendwelche einstellungen?!

## Antworten

### [#2](https://www.typo3.net/d/106525-menue-userfunc-und-mehrsprachigkeit/2) · CrashOverride · 2011-07-27

Ist ja klar, kaum schreibe ich etwas in ein Forum komme ich kurz darauf selber auf die Antwort.

Im generierten Menü-Array muss noch der Wert "_PAGES_OVERLAY" => "1" gesetzt werden, dass es in einer anderen Sprache auch funktioniert.
Ich bin darauf gekommen als ich im TYPO3 Standard alles bis auf die lezte IF-Abfrage durch debuggt habe... Schwerer weg aber es hat sich gelohnt!

---

Quelle: „Menü Userfunc und Mehrsprachigkeit“, typo3.net, https://www.typo3.net/d/106525-menue-userfunc-und-mehrsprachigkeit
Beiträge von Mitgliedern des Forums. Bitte mit Link auf die Diskussion zitieren.
