Создайте меню Bootstrap с помощью WayFinder

Попытка создать меню Bootstrap с помощью WayFinder. Как это закончить?

<ul class="nav navbar-nav">
   <li class="dropdown">
      <a href="#" class="dropdown-toggle" id="drop1" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> Dropdown <span class="caret"></span> </a> 
      <ul class="dropdown-menu" aria-labelledby="drop1">
         <li><a href="#">Action</a></li>
         <li><a href="#">Another action</a></li>
         <li><a href="#">Something else here</a></li>
         <li role="separator" class="divider"></li>
         <li><a href="#">Separated link</a></li>
      </ul>
   </li>
   <li class="dropdown">
      <a href="#" class="dropdown-toggle" id="drop2" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"> Dropdown <span class="caret"></span> </a> 
      <ul class="dropdown-menu" aria-labelledby="drop2">
         <li><a href="#">Action</a></li>
         <li><a href="#">Another action</a></li>
         <li><a href="#">Something else here</a></li>
         <li role="separator" class="divider"></li>
         <li><a href="#">Separated link</a></li>
      </ul>
   </li>
</ul>

Мой вызов WayFinder:

[[Wayfinder? &startId=`0` &level=`1`
                               &hideSubMenus=`TRUE` &includeDocs=`1,2,3,4,5,55,7,8,74`
                               &outerTpl=`chunk_navigation-menu`]]

А мое chunk_navigation-menu выглядит так: <ul class="navbar-nav nav">[+wf.wrapper+]</ul>


person Community    schedule 09.09.2016    source источник


Ответы (1)


Прежде всего, я предполагаю, что вы используете MODX Evolution.

Самый простой способ сделать это — использовать

&outerClass
&parentClass
&innerClass
&parentRowTpl

В вашем вызове Wayfinder.

Это должно выглядеть так:

[[Wayfinder? &startId=`[(site_start)]` &level=`2` &outerClass=`nav navbar-nav` &parentClass=`dropdown` &innerClass=`dropdown-menu` &parentRowTpl=`navbar_parentRowTpl`]]

Примечание. Если вы не используете [(site_start)] в своем контексте (контекстах), замените его идентификатором родительского ресурса вашего меню.

Также в этом случае вам нужно будет создать файл navbar_parentRowTpl. Этот фрагмент должен выглядеть так:

<li[+wf.id+][+wf.classes+] class="dropdown" id="menu[+id+]">
<a class="dropdown-toggle" data-toggle="dropdown" data-target="#menu[+id+]" href="[+wf.link+]" title="[+wf.title+]">
    [+wf.linktext+]
    <b class="caret"></b>
</a>
[+wf.wrapper+]</li>

Поскольку я давно не работаю с Evo, если возникнут проблемы с этим кодом, дайте мне знать, и я смогу вам помочь.

Я использовал этот пример в качестве ссылки: https://gist.github.com/mkay/f0afc97ec1536932e0a3

И использовал эту таблицу для преобразования в синтаксис Evo:

https://rtfm.modx.com/revolution/2.x/making-sites-with-modx/tag-syntax

person Daniel M. Melo    schedule 10.09.2016
comment
Привет, Даниэль, да, MODx EVO - ваш ответ выше сработал отлично, спасибо. Придется немного подправить, но все будет в порядке... еще раз спасибо. - person ; 11.09.2016