29. 08. 2014, 11:48

Hallo miteinander!

Ich bin auf ein Verhalten von Typo3 CMS gestoßen, dass sich mir nicht spontan erschließt.

Ich möchte ein TMENU wiederverwenden, die Definition ist wie folgt:

  1. lib.mainMenu.stdItem = TMENU
  2. lib.mainMenu.stdItem {
  3. wrap = <ul>|</ul>
  4. NO = 1
  5. NO.wrapItemAndSub = <li>|</li>
  6. ACT = 1
  7. ACT.wrapItemAndSub = <li class="active">|</li>
  8. CUR = 1
  9. CUR.wrapItemAndSub = <li class="current">|</li>
  10. }

Folgender Code funktioniert wie erwartet (eine Kopie des TMENUs):

  1. lib.mainMenu.level_0 =< lib.mainMenu.stdMenu
  2. lib.mainMenu.level_0.10 {
  3. entryLevel = 0
  4. 1 < lib.mainMenu.stdItem # this works fine
  5. 1.wrap >
  6. }

Tausche ich den Kopieroperator durch den Referenzoperator aus, gibt T3 diese Menüebene nicht mehr aus.

  1. lib.mainMenu.level_0 =< lib.mainMenu.stdMenu
  2. lib.mainMenu.level_0.10 {
  3. entryLevel = 0
  4. 1 =< lib.mainMenu.stdItem # this does not work!
  5. 1.wrap >
  6. }

Ich erwarte an dieser Stelle, dass eine Referenz genauso funktionieren würde wie eine Kopie. Was ist hier das Problem? Behandelt T3 TMENU's auf eine andere Art und Weise wie COA's?

Viele Grüße,

Kruemel