Вывод данных через pdoResources

Доброго времени суток!
Возникла следующая проблема: на одной странице, несколько раз обращаюсь к pdoResources, в первый раз он выводит все верно. А вот во второй, начинает выводить все тоже что и в первый раз. Надеюсь вы подскажите в чем дело, так как в поиске ответа найти не смог, а своих знаний на данный момент не хватает.
Вот в такой чанк(шаблон) мы выводим каждую запись
<div class="thumbnails thumbnail-style ">
    <div class="thumbnail-img">
		<div class="overflow-hidden">
	    	<a class="hover-effect" href="#">
				<img class="img-responsive" src="" alt="">
			</a>
		</div>
		<a class="btn-more hover-effect" href="[[~[[+id]]]]">Подробнее <i class="fa fa-chevron-right"></i></a>                   
	</div>
	<div class="caption">
		<div class="country">
            <a href="[[pdoField? &topLevel=`2` &field=`uri`]]">
            	[[pdoField? &topLevel=`2`]]
            </a>
            <img src="[[pdoField? &topLevel=`2` &field=`Flag`]]" alt="">
		</div>		
		<h3><a class="hover-effect" href="#">[[+pagetitle]]</a></h3>
		<p>Donec id elit non mi porta gravida at eget metus. Fusce dapibus, justo sit amet risus etiam porta sem.</p>
	</div>
</div>
Далее, первый раз я вызываю pdo вот так
[[!pdoResources?
        &parents=`[[*TravelTripsID]]`
        &tpl=`tpl.TravelTips`
        &tplLast=`tpl.TravelTips.last`
        &hideContainers=`1`
        &showLog=`1`
        &depth=`2`
        &loadModels=`ms2gallery`
        &limit=`3`
    ]]
Вот что пишется в логах
0.0000350: Loaded model "ms2gallery" from "/core/components/ms2gallery/model/"
0.0000770: pdoTools loaded
0.0000279: xPDO query object created
0.0004320: Added selection of modResource: SQL_CALC_FOUND_ROWS `id`, `type`, `contentType`, `pagetitle`, `longtitle`, `description`, `alias`, `link_attributes`, `published`, `pub_date`, `unpub_date`, `parent`, `isfolder`, `introtext`, `richtext`, `template`, `menuindex`, `searchable`, `cacheable`, `createdby`, `createdon`, `editedby`, `editedon`, `deleted`, `deletedon`, `deletedby`, `publishedon`, `publishedby`, `menutitle`, `donthit`, `privateweb`, `privatemgr`, `content_dispo`, `hidemenu`, `class_key`, `context_key`, `content_type`, `uri`, `uri_override`, `hide_children_in_tree`, `show_in_tree`, `properties`
0.0004458: Processed additional conditions
0.0007341: Added where condition: modResource.parent:IN(35,40,45), modResource.published=1, modResource.deleted=0, modResource.isfolder=0
0.0000780: Sorted by modResource.publishedon, DESC
0.0000021: Limited to 3, offset 0
0.0002780: SQL prepared "SELECT SQL_CALC_FOUND_ROWS `modResource`.`id`, `modResource`.`type`, `modResource`.`contentType`, `modResource`.`pagetitle`, `modResource`.`longtitle`, `modResource`.`description`, `modResource`.`alias`, `modResource`.`link_attributes`, `modResource`.`published`, `modResource`.`pub_date`, `modResource`.`unpub_date`, `modResource`.`parent`, `modResource`.`isfolder`, `modResource`.`introtext`, `modResource`.`richtext`, `modResource`.`template`, `modResource`.`menuindex`, `modResource`.`searchable`, `modResource`.`cacheable`, `modResource`.`createdby`, `modResource`.`createdon`, `modResource`.`editedby`, `modResource`.`editedon`, `modResource`.`deleted`, `modResource`.`deletedon`, `modResource`.`deletedby`, `modResource`.`publishedon`, `modResource`.`publishedby`, `modResource`.`menutitle`, `modResource`.`donthit`, `modResource`.`privateweb`, `modResource`.`privatemgr`, `modResource`.`content_dispo`, `modResource`.`hidemenu`, `modResource`.`class_key`, `modResource`.`context_key`, `modResource`.`content_type`, `modResource`.`uri`, `modResource`.`uri_override`, `modResource`.`hide_children_in_tree`, `modResource`.`show_in_tree`, `modResource`.`properties` FROM `modx_site_content` AS `modResource` WHERE  ( `modResource`.`parent` IN (35,40,45) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 AND `modResource`.`isfolder` = 0 )  ORDER BY modResource.publishedon DESC LIMIT 3 "
0.0000851: SQL executed
0.0000839: Total rows: 1
0.0000122: Rows fetched
0.0008998: Loaded chunk "tpl.TravelTips.last"
0.0314391: Returning processed chunks
0.0334871: Total time
15 204 352: Memory usage
Потом обращаюсь для вывода к ПДО еще раз
[[!pdoResources?
          &parents=`[[*ShowPlaceID]]`
          &tpl=`tpl.Showplace`
          &tplLast=`tpl.Showplace.last`
          &hideContainers=`1`
          &showLog=`1`
          &depth=`2`
          &loadModels=`ms2gallery`
          &limit=`8`
     ]]
Вот лог
0.0000610: pdoTools loaded
0.0000169: xPDO query object created
0.0002589: Added selection of modResource: SQL_CALC_FOUND_ROWS `id`, `type`, `contentType`, `pagetitle`, `longtitle`, `description`, `alias`, `link_attributes`, `published`, `pub_date`, `unpub_date`, `parent`, `isfolder`, `introtext`, `richtext`, `template`, `menuindex`, `searchable`, `cacheable`, `createdby`, `createdon`, `editedby`, `editedon`, `deleted`, `deletedon`, `deletedby`, `publishedon`, `publishedby`, `menutitle`, `donthit`, `privateweb`, `privatemgr`, `content_dispo`, `hidemenu`, `class_key`, `context_key`, `content_type`, `uri`, `uri_override`, `hide_children_in_tree`, `show_in_tree`, `properties`
0.0002742: Processed additional conditions
0.0004470: Added where condition: modResource.parent:IN(34,37,38,43,39,42,41,44), modResource.published=1, modResource.deleted=0, modResource.isfolder=0
0.0000470: Sorted by modResource.publishedon, DESC
0.0000010: Limited to 8, offset 0
0.0001650: SQL prepared "SELECT SQL_CALC_FOUND_ROWS `modResource`.`id`, `modResource`.`type`, `modResource`.`contentType`, `modResource`.`pagetitle`, `modResource`.`longtitle`, `modResource`.`description`, `modResource`.`alias`, `modResource`.`link_attributes`, `modResource`.`published`, `modResource`.`pub_date`, `modResource`.`unpub_date`, `modResource`.`parent`, `modResource`.`isfolder`, `modResource`.`introtext`, `modResource`.`richtext`, `modResource`.`template`, `modResource`.`menuindex`, `modResource`.`searchable`, `modResource`.`cacheable`, `modResource`.`createdby`, `modResource`.`createdon`, `modResource`.`editedby`, `modResource`.`editedon`, `modResource`.`deleted`, `modResource`.`deletedon`, `modResource`.`deletedby`, `modResource`.`publishedon`, `modResource`.`publishedby`, `modResource`.`menutitle`, `modResource`.`donthit`, `modResource`.`privateweb`, `modResource`.`privatemgr`, `modResource`.`content_dispo`, `modResource`.`hidemenu`, `modResource`.`class_key`, `modResource`.`context_key`, `modResource`.`content_type`, `modResource`.`uri`, `modResource`.`uri_override`, `modResource`.`hide_children_in_tree`, `modResource`.`show_in_tree`, `modResource`.`properties` FROM `modx_site_content` AS `modResource` WHERE  ( `modResource`.`parent` IN (34,37,38,43,39,42,41,44) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 AND `modResource`.`isfolder` = 0 )  ORDER BY modResource.publishedon DESC LIMIT 8 "
0.0000570: SQL executed
0.0000582: Total rows: 4
0.0000200: Rows fetched
0.0005460: Loaded chunk "tpl.Showplace"
0.0014169: Loaded chunk "tpl.Showplace.last"
0.0023851: Returning processed chunks
0.0036712: Total time
14 942 208: Memory usage
И в обоих случаях, выводится 1 запись из первого вывода. Если в первом варианте это ожидаемо, то во втором, должно быть 5 других записей (они опубликованы и не скрыты никак).

З.Ы. Если сможете подсказать, как подключить еще картинку для вывода(через ms2g) то моей признательности не будет предела.

Всем заранее спасибо за проявленный интерес и помощь!
Игорь
23 июня 2015, 18:00
modx.pro
2 529
0

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

Игорь
24 июня 2015, 20:07
0
Люди добрые, очень надеюсь на вашу помощь! Хотя бы подскажите в какую сторону копать, где искать ошибку.
    Максим Кузнецов
    24 июня 2015, 20:26
    +1
    По поводу картинок, как-то так, например:
    &leftJoin=`{
    	"75x75": {"class":"msResourceFile","alias":"75x75", "on": "75x75.resource_id = modResource.id AND 75x75.path LIKE '%/75x75/' AND 75x75.rank=0"}
    }`
    &select=`{
    	"modResource":"*"
    	,"75x75":"75x75.url as 75x75"
    }`
    75x75, соответственно, меняете на ваши пропорции и вызывается в чанке как [[+75x75]]. А вообще — вот.

    Что же до основной проблемы — ну, судя по логам, все ок. Могу предложить следующее:
    а) вызывать pdoFetch некэшированным
    б) обновить кэш
    в) попробовать вызывать результаты pdoResources в плейсхолдеры.

    + возможно, хоть и маловероятно, что как-то барахлит &tplLast.

    И, если не секрет, если вы указываете при помощи tv — родителей, то зачем вам &depth= `2`? Не может ли так выйти, что они в древе из-за 2х уровней и сортировке по publishedon выходят на один и тот же список?
      Игорь
      24 июня 2015, 20:35
      0
      Большое спасибо за ответ, с картинками вроде удалось разобраться самому. НО и ваш вариант мне важен, для изучения возможных подходов.
      Пункты а и б я пробовал не помогло. В — сейчас буду пробовать.
      Да согласен с "&depth=2" это у меня лишнее.
        Игорь
        24 июня 2015, 20:52
        0
        К сожалению и остальные Ваши рекомендации не помогли.
          Максим Кузнецов
          24 июня 2015, 21:03
          +1
          Мм… попробуйте теста ради удалить &tplLast у обоих вызовов, а &tpl заменить на чанк с содержимым [[+id]] — посмотреть, какие ресурсы возвращают. Если по логам все ок и айди возвращаются нормальные, то проблема, скорее всего, в чанках.
            Игорь
            24 июня 2015, 22:38
            0
            Я подключал "&returnIds" — проверял и ID все верные возвращались. Вот сейчас отключил tplLast и результат все тот же (((
            Чанк обертка для вывода в обоих случаях используется одинаковая и она приведена выше. Сейчас создал полную ее копию, и подключил к выводу достопримечательностей, ситцуация изменилась, но опять почему то берется только 1 элемент. Последний из списка который вывелся по запросу ПДО.
              Максим Кузнецов
              24 июня 2015, 23:30
              0
              Мм… а если по-отдельности вызывать pdoResources? Сначала первый, потом первый стереть и вызвать второй — результаты будут корректными?

              И, если не затруднит, скиньте древо ваших ресурсов, которые вы вызываете. Пытаюсь понять глубину вложения и, возможно, исходя из этого их можно вызывать как-то иначе, не прибегая к такой куче pdoField-ов.
                Игорь
                25 июня 2015, 07:21
                0
                Если вызывать их поочереди, то результат будет такой же как сейчас на странице(когда мы для чанка обертки используем два разных чанка(хотя их внутреннее содержимое абсолютно идентично)) На картинке структура — мне необходимо из всех категорий выбирать статьи, количество категорий не ограничено может быть, подкатегории создаваться не будут)
                  Игорь
                  25 июня 2015, 11:27
                  0
                  Спасибо за помощь, разобрался. Ошибка была в том, что нельзя было использовать вложенный чанк для шаблона вывода в pdo. Спасибо Максим за помощь!
      Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
      10