PdoResources + PdoPage (Двойная пагинация)

Подскажите пожалуйста как правильно реализовать следующую задачу:

Есть ресурсы как показано на рис.:



Требуется вывести на страницу две пагинации.

1) Первая пагинация выводить сверху ресурсы с годами.
2) Внизу выводить постраничную пагинацию в зависимости от выбранного года (первая пагинация), по умолчанию выводить все ресурсы родителя (5). Ресурсы контейнеры (названия года) скрыты.
Антон Грошев
13 апреля 2016, 11:57
modx.pro
4 579
0

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

Игорь Терентьев
14 апреля 2016, 09:47
0
Может через GET получать год?
[[pdoMenu?
&tpl=`<a href="[[~5]]?parent=[[+id]]">[[+pagetitle]]</a>`
]]
[[!pdoResources?
    &parents=`[[!#POST.parent]]`
    &showLog=`0`
]]
п.с. Не проверял на работоспособность.
Антон Грошев
18 апреля 2016, 10:42
0
большое спасибо, помогло.
    Антон Грошев
    18 апреля 2016, 12:02
    0
    еще вопрос:

    А если усложнить задачу: вместо id выводить в строку alias.

    Пример:

    [[pdoMenu?
    &parents=`25`
    &tpl=`@INLINE <a href="[[~25]]?parent=[[+alias]]">[[+pagetitle]]</a>`
    &level=`1`
    ]]

    Как передать номер id из alias в [[!#GET.parent]]?
      Антон Грошев
      18 апреля 2016, 20:43
      0
      Решил следующим образом:

      [[pdoMenu? &parents=`5` &tplOuter=`@INLINE 
                  <ul id="filterOptions1" class="gallery-cats clearfix">
                      <li class=""><a href="{{~5}}" class="all">Minden</a></li>
                      [[+wrapper]] 
                  </ul>`
                  &tpl=`@INLINE <li><a href="{{~5}}?year={{+alias}}">{{+pagetitle}}</a></li>`
                  &level=`1` &showHidden=`1` &showLog=`0`
      ]]
      
      [[!pdoPage? &includeTVList=`Kép` &parents=`5`  &hideContainers=`1` &pageLimit=`5` &limit=`8` &ajaxMode=`scroll` &scheme=`uri`
                  
                  &leftJoin=`{
      		    "Parent":{
      			"class": "modResource",
      			"alias": "Parent",
      			"on":"Parent.id = modResource.parent"
      		    }
      	        }`
      	        
      	        &sortby=`{"Parent.menuindex":"asc", "menuindex":"asc"}`
                  
                  &tplWrapper=`@INLINE  
                  <div class="row clearfix">
                      <ul class="gallery-post-grid holder">
                          {{+output}}
                      </ul>
                  </div>`
                  
                  &tplPageWrapper=`@INLINE <div class="pagination"><ul>{{+first}}{{+prev}}{{+pages}}{{+next}}{{+last}}</ul></div>`
                  
                  &tpl=`@INLINE  
                  <li  class="span3 gallery-item" data-id="id-{{+idx}}" data-type="{{+parent:pdofield=`pagetitle`}}">
                      <span class="gallery-hover-4col hidden-phone hidden-tablet">
                          <span class="gallery-icons">
                              <a href="{{+tv.Kép}}" class="item-zoom-link lightbox" title="{{+pagetitle}}" data-rel="prettyPhoto[gallery1]"></a> 
                                  <a href="{{+uri}}" class="item-details-link"></a>
                              </span>
                          </span>
                          <a href="{{+uri}}"><img src="{$_pls['tv.Kép'] | ereplace : '/^(.*[\/])(.+)(.+)(\..{3,4})$/imu' : '${1}thumbs/${2}${3}_thumb_w270_h220${4}'}" alt="Gallery"></a>
                          <span class="project-details"><a href="{{+uri}}">{{+pagetitle}}</a>{{+id:pdofield=`alkalmazott_technika`}} ({{+parent:pdofield=`pagetitle`}})</span>
                  </li>`  
                  &showLog=`1` &where=`{"Parent.alias:LIKE":"%[[!#get.year]]%"}`
                  ]]
                  [[+page.nav]]
      Антон Грошев
      19 апреля 2016, 16:51
      0
      Василий, подскажи пожалуйста, почему в моем примере не срабатывает класс активного пункта class=«active», срабатывает только в &tplStart:
      [[pdoMenu? &parents=`5` &level=`1` &showHidden=`1` &displayStart=`1` &countChildren=`1` &fastMode=`1` &scheme=`uri`
      	&tplOuter=`@INLINE <ul class="gallery-cats clearfix">[[+wrapper]]</ul>` &tplInner=`@INLINE [[+wrapper]]`
      	&tplStart=`@INLINE <li class="[[+classnames]]"><a href="{{~5}}">Minden</a> ([[+children]])</li>[[+wrapper]]`
      	&tpl=`@INLINE <li class="[[+classnames]]"><a href="{{~5}}?year={{+alias}}">{{+pagetitle}}</a> ([[+children]])</li>`
      	&showLog=`0` 
      ]]
      Что делаю не так?
        October
        20 апреля 2016, 10:04
        0
        Используйте [[+classes]] не вставляя в class="_"
        <li [[+classes]] >
        Если у вас имя css класса для активного пункта меню отличается от имени active то используйте следующий параметр
        &hereClass=`имя вашего css класса для активного пункта меню`
          Антон Грошев
          20 апреля 2016, 10:37
          0
          Это все я знаю, уже пробовал, не помогает.
        Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
        9