pdoPage ajax пагинация + фильтры

Специально зарегистрировался для для данного вопроса.
В modxе недавно, поэтому многого не знаю.
Собственно вопрос.
Необходимо вывести вывести миниатюры постов, с пагинацией и фильтрам по годам и месяцам.
Через pdoResources все хорошо работает:

html
<section class="section news">
   <div class="container w-container">
      <h1 class="news__title">Новости Корпорации Газэнергострой</h1>
      <ul class="news-filter news-filter-year">
         <li data-val="2017" data-name="year" class="news-filter__item news-filter-year__item"> 2017</li>
         <li data-val="2016" data-name="year" class="news-filter__item news-filter-year__item"> 2016</li>
         <li data-val="2015" data-name="year" class="news-filter__item news-filter-year__item"> 2015</li>
         <li data-val="2014" data-name="year" class="news-filter__item news-filter-year__item"> 2014</li>
         <li data-val="2013" data-name="year" class="news-filter__item news-filter-year__item"> 2013</li>
         <li data-val="2012" data-name="year" class="news-filter__item news-filter-year__item"> 2012</li>
         <li data-val="2011" data-name="year" class="news-filter__item news-filter-year__item"> 2011</li>
         <li data-val="2010" data-name="year" class="news-filter__item news-filter-year__item"> 2010</li>
      </ul>
      <ul class="news-filter news-filter-month">
         <li data-val="" data-name="month" class="news-filter__item news-filter-month__item">Весь год</li>
         <li data-val="01"  data-name="month" class="news-filter__item news-filter-month__item">Январь</li>
         <li data-val="02"  data-name="month" class="news-filter__item news-filter-month__item">Февраль</li>
         <li data-val="03"  data-name="month" class="news-filter__item news-filter-month__item">Март</li>
         <li data-val="04"  data-name="month" class="news-filter__item news-filter-month__item">Апрель</li>
         <li data-val="05"  data-name="month" class="news-filter__item news-filter-month__item">Май</li>
         <li data-val="06"  data-name="month" class="news-filter__item news-filter-month__item">Июнь</li>
         <li data-val="07"  data-name="month" class="news-filter__item news-filter-month__item">Июль</li>
         <li data-val="08"  data-name="month" class="news-filter__item news-filter-month__item">Август</li>
         <li data-val="09"  data-name="month" class="news-filter__item news-filter-month__item">Сентябрь</li>
         <li data-val="10"  data-name="month" class="news-filter__item news-filter-month__item">Октябрь</li>
         <li data-val="11"  data-name="month" class="news-filter__item news-filter-month__item">Ноябрь</li>
         <li data-val="12"  data-name="month" class="news-filter__item news-filter-month__item">Декабрь</li>
      </ul>
   
   <div id="pdopage">
      <ul class="news-list">
         [[!getNews]]
      </ul>
         [[!+page.nav]]
   </div>
  </div> 
</section>

Сниппет getNews
<?php
$filter = array();
   
   if($_POST['year']) {
      $filter[] = 'YEAR(FROM_UNIXTIME(modResource.publishedon))='.$_POST['year'];
   }
   if($_POST['month']) {
       $filter[] = 'MONTH(FROM_UNIXTIME(modResource.publishedon))='.$_POST['month'];
   }
   $page = isset($_REQUEST['page']) ? $_REQUEST['page'] : '1';
   
   if(count($filter) > 0) {
      $where = $modx->toJSON($filter);
   } else {
      $where = '';
   }
   
   $params = array(
       'parents' => '2',
       'limit' => '10',
       'page' => $page,
       'tpl' => 'newsListItem',
       'includeTVs' => 'newsListImg',
       'where' => $where,
       'ajaxElemRows' => '#pdopage .news-list',
       'ajaxElemPagination' => '#pdopage .pagination',
       'ajaxElemLink' => '#pdopage .pagination a',
       'includeContent' => '1',
       'ajaxMode'  => 'default'
      
   );
   
   return  $modx->runSnippet('pdoPage',$params);


js
$('.news-filter li').click( function () {
      $(this).parent().find('li').removeClass('active');
      $(this).addClass('active');


      $('.news-filter').serializeAny();
         $.ajax({
         url: 'http://gazenergostroy.ru/ajax/ajaxnews',
         data: $('.news-filter').serializeAny(),
         method: 'POST'
      }).done(function(data) {
         if (data.length >0) {
            $('.news-list').hide().html(data).fadeIn(400);
         } else {
            $('.news-list').html('Новостей не найдено.');
         }

         $(".news-list__text").each(function() {
             var $this = $(this);
             $this.html($this.html().replace(/ /g, ''));
         });
      });
   });


Смысл в том, что при добавлении аякса в пагинацию, со сниппета не приходят данные(точнее приходят но сам вызов $modx->runSnippet('pdoPage',$params), возвращает пустую строку), понимаю что проблема может решаться элементарно, но ответов на похожие вопросы попусту нет. Видел пост о том, что нужно использовать сессии, но как это может в данном случае непойму.
Александр
14 июля 2017, 11:22
modx.pro
2 091
0

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

Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
0