PdoMenu вывод только второго уровня

Здравствуйте, не нашёл решения на свою проблему.
Имею примерну такую структуру
  • Главная
  • Услуги
    • Услуга1
    • Услуга2

    • Услуга3
  • О нас
в главном меню я вывожу только 1й уровень
[[pdoMenu? &parents=`0` &level=`1` &tpl=`anyItemMenu` &tplHere=`activeItemMenu`]]

Но есть также у меня подменю, в котором должно отображаться только второй уровень ветки.
[[pdoMenu? &level=`1`]
Если использую так, то дерево строится от текущего ресурра (допустим от «Услуги») и выводится подменю корректно, но в случае когда перехожу документ 2го уровеня (к примеру «Услуга 1»). То дерево строится уже от него. Но у этого элемента уже нет дочерних документов, т.о. не будет подменю.

Как можно сделать вывод подменю так, чтобы всегда в нем отображался только 2й уровень текущей ветки?
Большое спасибо!
Rimas Kudelis
21 марта 2014, 08:53
modx.pro
1
3 863
0

Комментарии: 9

Rimas Kudelis
21 марта 2014, 12:56
0
то есть для для «Главная» и «О нас» подменю выводится не будет (блок будет 0й высоты), а для «Услуги» в подменю будет «Услуга1», «Услуга2», «Услуга3» и при переходе на любоей из документов 2го уровня, подменю также должно отображаться. =)
    Максим Франц
    21 марта 2014, 13:08
    +1
    указать для подменю &parents?
      Rimas Kudelis
      21 марта 2014, 13:32
      0
      но для для каждого подменю оно разное, то есть для услуг — родитель Услуги, допустим с разделе О нас есть «История компании», тогда для неё будет родителем «О нас».
      То есть этот &parents должен динамически изменяться в зависимости от ветки.
        Максим Франц
        21 марта 2014, 13:36
        0
        Сделайте для разделов с подменю отдельный шаблон с динамическим id.

          Василий Наумкин
          21 марта 2014, 14:17
          0
          Вот бы кто-то придумал такой сниппет, который мог бы выбрать id родителя в зависимости от текущего документа…

          А, стойте, уже придумали: UltimateParent и pdoField!
            Rimas Kudelis
            22 марта 2014, 08:52
            0
            Огромное спасибо, Василий
            [[pdoMenu? &level=`1` &parents=`[[UltimateParent? &topLevel=`1`]]` ]]
            Так работает.
            Жалко, что документации мало по modx, а именно примеров использования.
            Ещё раз спасибо
              Rimas Kudelis
              22 марта 2014, 09:12
              0
              Чисто уже из интереса пробую. тоже самое сделать с помощью pdoField, но корректно не работает
              [[PdoMenu? &level=`1` &parents=`[[pdoField? &id=`[[*id]]` &top=`1`]]`]]
              [[PdoMenu? &level=`1` &parents=`[[pdoField? &topLevel=`1`]]`]]
              [[PdoMenu? &level=`1` &parents=`[[pdoField? &topLevel=`1` &id=`[[*id]]` ]]`]]


              По идее вторым способом должно работать, но выводится полное меню от самого корня
        Илья Уткин
        21 марта 2014, 16:46
        0
        Попробуйте добавить параметр parents:
        [[pdoMenu? &level=`1` &parents=`[[*parent]]`]]
          Rimas Kudelis
          22 марта 2014, 08:40
          0
          Спасибо это [[pdoMenu? &level=`1` &parents=`[[*parent]]`]]
          работает также как и
          [[pdoMenu? &parents=`0` &level=`1`]]
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          9