Как в Wayfinder сделать ссылку на родитель

Вот задумал вывести подобного рода меню, решил что Wayfinder лучше всего подойдет, но столкнулся с проблемой. Подскажите пожалуйста как в Wayfinder сделать ссылку на родитель чтобы было так как на фото.
Спасибо большое Безумкину за то что можно еще счетчик прикрутить к Wayfinder.
Aleksandr D
21 мая 2013, 15:47
modx.pro
2 561
0

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

Василий Наумкин
22 мая 2013, 06:50
0
Нужно сделать так, чтобы элемент оформления ul был в чанке родителя. Тогда можно будет пристроить вызов сниппета прямо в него, после потомков. Типа такого:
<ul>
	[[+wf.wrapper]]
	<li>[[!getParent?id=`[[+id]]`]]</li>
</ul>

Понятно, нужно еще набросать простенький сниппет getParent, который вернёт тебе нужную ссылку.
    Алексей
    22 мая 2013, 09:21
    0
    если знаком с jquery, проще на нем набросать. Меняй свойство
    li:last-child:after{content}
    для каждого ul
      Мордынский Николай
      22 мая 2013, 13:30
      0
      а еще есть пакет расширения modx — ultimateParent который возвращает id родителя на заданнгое количество уровней вверх modx.com/extras/package/ultimateparent

      Ну это так чтобы не велосипедить))
        Виктор Долгий
        22 мая 2013, 13:53
        0
        Из этой серии весьма удобный сниппет setPlaceholders. Этот вообще многое умеет с родителями. И куча плюшек есть. Работает быстро.
          Aleksandr D
          22 мая 2013, 18:39
          0
          Спасибо большое, но Извините за мою кривизну рук, пробивал все варианты — только у меня ничего не получается. На примере у кого то есть похожее решение.
          Простите Василий — знаний маловато даже чтоб набросать простенький снипет.
          Нашел в сети — такое чудо «Дополнение ReturnLink позволяет вывести ссылку на первый опубликованный родительский документ.» — но чтото у меня в таком варианте оно не работает —
          <li >
               <a href="[[returnLink]]" ><h2>
               </h2></a>
            </li>
          А вот ultimateParent — нужно в связке с чем то выбросить — только с чем…
            Виктор Скиба
            02 июля 2013, 10:45
            0
            Тоже очень интересует конкретное решение данного вопроса, кто-нибудь может подсказать?
              Мордынский Николай
              02 июля 2013, 14:01
              0
              <ul>
                     <li class="parent">[[~[[!parentID?id=`[[+id]]`]] ]]</li>
              	[[+wf.wrapper]]
              
              </ul>
              снипет
              $res= modx->getResorce('id');
              return $res->parent;
              Это будит работать для 1 уровня вложенности
                Мордынский Николай
                02 июля 2013, 14:18
                0
                <ul>
                       <li class="parent"> <a href="[[~[[!parentID?id=`[[+id]]`]] ]]">  [[!parentName?id=`[[+id]]`]]  </a></li>
                	[[+wf.wrapper]]
                
                </ul>
                сниппеты
                $res= modx->getResorce('id');
                return $res->parent;
                $main_res= $modx->getResorce($id);
                $par_res= $modx->getResorce($main_res->parent);
                return $par_res->menutitle;
                Это будит работать для 1 уровня вложенности

                либо так

                <ul>
                       <li class="parent"><a href="[[!parentURL?id=`[[+id]]`]]">  [[!parentName?id=`[[+id]]`]] </a> </li>
                	[[+wf.wrapper]]
                
                </ul>
                снипет
                $res= modx->getResorce('id');
                return $modx->makeUrl($res->parent);
                2ой снипет как и в первом случае
                  Виктор Скиба
                  02 июля 2013, 14:19
                  0
                  А что с кодом
                  $res= modx->getResorce('id');
                  return $modx->makeUrl($res->parent);
                  сделать нужно куда вставить?
                    Мордынский Николай
                    02 июля 2013, 14:20
                    0
                    это код снипета parentUrl
                      Виктор Скиба
                      02 июля 2013, 14:21
                      0
                      Нужно создать новый снипет parentUrl с этим кодом и все?
                        Мордынский Николай
                        02 июля 2013, 14:23
                        0
                        да

                        и мануалы прочесть
                        хотябы введение в модх простейшие
                        rtfm.modx.com/display/revolution20/Home
                          Виктор Скиба
                          02 июля 2013, 14:33
                          0
                          Выдаето шибку
                          Parse error: syntax error, unexpected T_OBJECT_OPERATOR in \core\cache\includes\elements\modsnippet\5.include.cache.php on line 7
                            Мордынский Николай
                            02 июля 2013, 15:11
                            0
                            а какой вариант первый или 2ой используешь?

                            Я код не проверял прямо тут писал может где ошибся но логика праваильная вроде

                            в данный момент просто не начем проверить может где по синтаксису ошибся
                              Виктор Скиба
                              02 июля 2013, 15:14
                              0
                              <ul>
                                     <li class="parent"><a href="[[!parentURL?id=`[[+id]]`]]">  [[!parentName?id=`[[+id]]`]] </a> </li>
                              	[[+wf.wrapper]]
                              
                              </ul>
                              Снипет parentURL
                              $res= modx->getResorce('id');
                              return $modx->makeUrl($res->parent);
                              Снипет parentName
                              $main_res= $modx->getResorce($id);
                              $par_res= $modx->getResorce($main_res->parent);
                              return $par_res->menutitle;
                                Виктор Скиба
                                02 июля 2013, 15:15
                                0
                                <ul>
                                       <li class="parent"><a href="[[!parentURL?id=`[[+id]]`]]">  [[!parentName?id=`[[+id]]`]] </a> </li>
                                	[[+wf.wrapper]]
                                
                                </ul>
                                я то в php вообще не знаток))
                                Снипет parentURL
                                $res= modx->getResorce('id');
                                return $modx->makeUrl($res->parent);
                                Снипет parentName
                                $main_res= $modx->getResorce($id);
                                $par_res= $modx->getResorce($main_res->parent);
                                return $par_res->menutitle;
                                  Мордынский Николай
                                  02 июля 2013, 15:38
                                  0
                                  <a href="[[!parentURL?id=`[[+id]]`]]">
                                  тут перед переменной я забыл &

                                  <a href="[[!parentURL? &id=`[[+id]]`]]">
                                    Виктор Скиба
                                    02 июля 2013, 15:41
                                    0
                                    Скажи пожалуйста, как правильно она должна прописана быть?
                                    Мордынский Николай
                                    02 июля 2013, 16:36
                                    0
                                    я исправил после знака вопроса все переменные начинаются с &
                                    Виктор Скиба
                                    03 июля 2013, 01:13
                                    0
                                    <a href="[[!parentURL? &id=`[[+id]]`]]">[[!parentName? &id=`[[+id]]`]]</a>
                                    Все равно такая же ошибка…
                Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
                20