We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 16240
    • 64 Posts
    Не знал как назвать smiley

    Всем привет, проблема такая:
    Есть Wayfinder, он должен выводить меню таким образом:
    <div id="navHeader" onClick="shiftSubDiv([b]1[/b])">Раздел1</div>
         <ul id="subDiv[b]1[/b]" style="display:none">
               <li><a href="..." title="...">Подраздел1</a></li>
               <li><a href="..." title="...">Подраздел2</a></li>
         </ul>
    <div id="navHeader" onClick="shiftSubDiv([b]2[/b])">Раздел2</div>
         <ul id="subDiv[b]2[/b]" style="display:none">
               <li><a href="..." title="...">Подраздел1</a></li>
               <li><a href="..." title="...">Подраздел2</a></li>
         </ul>
    

    и так далее...
    Жирным выделено то место, где мне надо чтобы вайфайндер выставлял число, которое при следуещем родителе должно меняться, а в списке к этому - повторяться.
    Никак не могу придумать что вывести в шаблонах. Первая мысль была [*wf.id*], но он почему-то ничего не ставит, т.е. использую чанки:
    parent_row
    <div id="navHeader" onClick="shiftSubDiv([+wf.id+])">[+wf.linktext+]</div>[+wf.wrapper+]

    inner
    <ul id="subDiv[+wf.id+]" style="display:none">[+wf.wrapper+]</ul>

    Сам вызов
    [!Wayfinder? &startId=`2` &innerRowTpl=`child_row` &parentRowTpl=`parent_row` &innerTpl=`inner` &innerHereTpl=`child_here`!]


    При таком раскладе на выходе получаю что на месте [+wf.id+] вообще ничего нет, причем пробовал как и на 1.0 так и 2.0 версиях...
    Стоят дружественные УРЛ - может из-за этого? И какой можно параметр использовать?

    Объясню для чего надо: нужно чтобы было меню, когда при клике по родителю открываются подразделы, для этого использую нарытый JS
    <script type="text/javascript">
    function shiftSubDiv(n)
    {
      var el = document.getElementById('subDiv'+n);
    
      if ( el.style.display == 'none' )
        el.style.display = 'block'
      else
        if ( el.style.display == 'block' )
        el.style.display = 'none';
    };
    </script>
    

    Тут видно, что для идентификации какой блок при каком родителе открывать используется номер -’ subDiv’+n
      • 22301
      • 1,084 Posts
      koshara, а почему js?
      к чему такой садомазо?
        [img]http://jurist-info.ru/pic/rrr.jpg[/img]

        Безжалостный пияр!
        Artima -- неуч!
        Осторожно: преступная локализация -- modx-cms.ru
        Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

        Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
        • 16240
        • 64 Posts
        Да веришь, не нашел как реализовать с помощью css, вот и садомазо... Нужно чтобы при нажатии на родителя открывался блок с дочерними, а при повторном нажатии - закрывался назад. Весь инет перерыл, cssplay посмотрел, и убедился что с помощью css не реализовать... а заказчик очень хочет, вот и геморроюсь huh или есть такой вариант сделанный по человечески на css?
          • 22301
          • 1,084 Posts
          понял. есть надежда, может, сообщники какой другой скрипт посоветуют.

          но я бы попробовал убедить заказчика в неюзабельности такого решения: подобное "поведение" меню весьма нестандартно.
            [img]http://jurist-info.ru/pic/rrr.jpg[/img]

            Безжалостный пияр!
            Artima -- неуч!
            Осторожно: преступная локализация -- modx-cms.ru
            Баштанник Андрей -- мегапрограммер из Белоруссии и поедатель говна, очень критично настроенный молодой человек!

            Дисклеймер для общительных: даю сам себе право транслировать в открытый эфир содержание лички, just for fun
            • 33694
            • 742 Posts
            [+wf.docid+] — RTFM!
              • 16240
              • 64 Posts
              Да... что-то уже совсем глаз замылен, теперь осталось только решить проблему с тем, что outerTpl не воспринимает [+wf.docid+]
              Но все равно спасибо за ответ!!!!!
                • 33694
                • 742 Posts
                Версия WayFinder’a какая? Вообще, прекрасно он всё воспринимает — я когда-то себе делал похожую на описанную тобой байду. Правда, из-за некоторых глюков прорисовки в Опере и частично по причинам которые озвучил opengate отказался от такого решения.
                Короче, всё работает, ищи где у тебя там ещё что замылено laugh
                  • 19164
                  • 1,215 Posts
                  Я вот недавно делал что-то подобное, называется баян...фу - аккордион smiley http://v-t-e.ru/ код Wayfinder для реализации пришлось малость поковырять, чтобы добавить плейсхолдер уровня вложенности. Но это если меню более чем одного уровня вложенности, в твоем случае можно и без него.

                  ЗЫ Вполне вероятно что в outerTpl [+wf.docid+] и не воспринимается. Если посмотреть код Wayfinder
                  'rowLevel' => array('[+wf.wrapper+]','[+wf.classes+]','[+wf.classnames+]','[+wf.link+]','[+wf.title+]','[+wf.linktext+]','[+wf.id+]','[+wf.attributes+]','[+wf.docid+]','[+wf.introtext+]','[+wf.description+]','[+wf.subitemcount+]'),
                  'wrapperLevel' => array('[+wf.wrapper+]','[+wf.classes+]','[+wf.classnames+]')

                  то сразу видно, какие плейсхолдеры работают на уровне row-шаблонов (rowLevel в коде), какие- на уровне outer (wrapperLevel)
                    DirectResize 0.9 beta. PHPThumb, sets of configurations, configuration, binded to specific path. No backward compatibility. | DirectResize 0.9. PHPThumb, наборы параметров, параметры, привязанные к определенным путям. Без обратной совместимости.

                    Unfortunately, DirectResize project is closed. If you want to continue development, PM me for access to project page on Google Code. К сожалению, проект DirectResize закрыт. Если вы желаете продолжить разработки, обращайтесь через ПМ для получения доступа к репозиторию на Google Code.

                    [PLUGIN] DirectResize - as Maxigallery but for single images :: Download :: [url=http://modxcms.com/forums/index.php/topic,21490]
                    • 16240
                    • 64 Posts
                    И как реализованно? Через [+wf.docid+]? При вызове его в родителе - он пишет значение, т.е. вставляет id, но при вызове в outerTpl - вообще ничего не пишет. судя из руководства к WF-ру в outerTpl разрешено только

                    available placeholders:
                    [+wf.classes+] - where classes specifed will be inserted (includes class=" ")
                    [+wf.classnames+] - outputs the just the class names (without class=" ")
                    [+wf.wrapper+] - where inner content will be inserted

                    Потому и не вставляет...
                      • 26085
                      • 494 Posts
                      может что нить типа phx count поможет