TYPO3 выберите раскрывающийся список всех страниц (уровень 1 и 2)

Я в настоящее время борюсь с TypoScript. Что мне нужно для архивирования, так это иметь поле выбора со всеми страницами (уровень 1, уровень 2) определенной страницы.

Итак, предположим, у меня есть страница под названием «Продукты», в которой есть подпункты «Продукт 1» и «Продукт 2». И «Продукт 1», и «Продукт 2» имеют другие собственные подэлементы.

Теперь я получил следующий скрипт:

temp.drop_down_box = COA
temp.drop_down_box {
  10 = HMENU
  10 {
     # Special menu type 'directory': Get subpages of the current page
     special = directory
     # '123' is the uid of the page, for which the subpages shall be listed in the drop down box
     special.value = 35
     # Select box with JavaScript event 'onChange' that enables a jump to the target page, once an entry has been selected in the list
     wrap = <select name="dropdown_navigation" size="1" onChange="document.location.href='index.php?id=' + this.value">|</select>
     1 = TMENU
     1 {
       expAll = 1
       noBlur = 1
       NO {
         # 'value' holds the uid of the page in the list (is later appended to the target URL above)
         stdWrap.dataWrap = <option value="{field:uid}">
         allWrap = |</option>
         # Don't wrap the items in link tags
         doNotLinkIt = 1
       }
       # Inherit the 'allWrap' and 'doNotLinkIt' settings from the NO part
       CUR < copy">.NO
       CUR = 1
       CUR {
       # If we're on the current page, mark this list entry as 'selected'
         stdWrap.dataWrap = <option value="{field:uid}" selected="selected">
       }
     }
  }
}

Он работает просто отлично, но только на одном уровне. Я хотел бы, чтобы это было так:

Product
- Product 1
  - Item 1
  - Item 2
  - Item 3
  - Item 4
- Product 2
  - Item 1
  - Item 2
  - Item 3

... и так далее.

Есть какой-либо способ сделать это?

С уважением, Андреас

* РЕДАКТИРОВАТЬ: Работает:

temp.drop_down_box = COA
temp.drop_down_box {
  10 = HMENU
  10 {

    // ... {code from first part of question here} ...
    // additional levels copying 1 level and changing required values

    2 < .1
    2.NO.linkWrap = <option value="{field:uid}">-- |</option>

    3 < .1
    3.NO.linkWrap = <option value="{field:uid}">---- |</option>

  }
}

person Andreas    schedule 10.07.2012    source источник


Ответы (1)


Для каждого уровня меню вам необходимо добавить следующую декларацию TMENU:

1 = TMENU
1 {
   ...
}

2 = TMENU
2 {
   ...
}

99 = TMENU
99 {
   ...
}
person biesior    schedule 10.07.2012