Size: a a a

MODX. Русскоязычное сообщество.

2021 February 12

A

Andrew in MODX. Русскоязычное сообщество.
Андрей Сергеевич
В чанки вынеси
Хм, вынес, все получилось. Спасибо! А крошки в pdoRes, потому что через pdoRes выводится список новостей, и у каждой новости в чанке есть путь до каталога, где она лежит)
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
Евгений
Правильнее будет сделать запрос в БД, если это снипппет, потом полученные данные разобрать и запихнуть в чанк. 

через getObject / getCollection / query? Почему правильнее? Чуть меньше вычислений?
И лучше использовать getIterator, поскольку, getCollection сразу получает весь объект и это занимает много памяти, а getIterator, получает что-то типа заготовки объекта и в цикле уже сам объект, что занимает меньше памяти, в насколько раз.
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
У ресурса 2-го уровня есть тв, которое подтягивает к нему ресурсы из другого дерева (т.е. они не дочерние ему) через запрос @select pagetitle, id FROM site_content WHERE parent=9. Все выводится отлично.
Задача - в родителе этого ресурса (в 1-м уровне) вывести результат ресурсов 2-го уровня (т.е. у родителя таких дочерних - например три, у каждого подтягиваются через селект из базы дочерние-типа).
Делаю двойной вызов pdoResources в родителе
[[!pdoResources?
 &tpl=parentCategoryTpl
 &sortdir=ASC
 &sortby=menuindex
 &limit=100
 &depth=0
 &parents=[[*id]]
]]
чанк parentCategoryTpl: (этот вызов работает прекрасно в самом ресурсе, который прямой потомок родителя основного (только без + а со *))
[[!pdoResources?
&tpl=categoryTpl
&sortdir=ASC
&sortby=menuindex
&limit=100
&depth=0
&includeTVs=imgCover,procInThisCategory
&parents=[[+id]]
&resources=[[+procInThisCategory]]
]]
В результате не выводится ничего. Уже несколько вариантов пробовал - и tv. добавлять и т.п. Понять не могу. Прошу помощи!!!
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
Xander Yanov
У ресурса 2-го уровня есть тв, которое подтягивает к нему ресурсы из другого дерева (т.е. они не дочерние ему) через запрос @select pagetitle, id FROM site_content WHERE parent=9. Все выводится отлично.
Задача - в родителе этого ресурса (в 1-м уровне) вывести результат ресурсов 2-го уровня (т.е. у родителя таких дочерних - например три, у каждого подтягиваются через селект из базы дочерние-типа).
Делаю двойной вызов pdoResources в родителе
[[!pdoResources?
 &tpl=parentCategoryTpl
 &sortdir=ASC
 &sortby=menuindex
 &limit=100
 &depth=0
 &parents=[[*id]]
]]
чанк parentCategoryTpl: (этот вызов работает прекрасно в самом ресурсе, который прямой потомок родителя основного (только без + а со *))
[[!pdoResources?
&tpl=categoryTpl
&sortdir=ASC
&sortby=menuindex
&limit=100
&depth=0
&includeTVs=imgCover,procInThisCategory
&parents=[[+id]]
&resources=[[+procInThisCategory]]
]]
В результате не выводится ничего. Уже несколько вариантов пробовал - и tv. добавлять и т.п. Понять не могу. Прошу помощи!!!
У родителя нет tv procInThisCategory поэтому параметр resources пустой
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
Артур Шевченко
У родителя нет tv procInThisCategory поэтому параметр resources пустой
так по этому тв вытягиваются (3-го уровня получается) результаты
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
Xander Yanov
так по этому тв вытягиваются (3-го уровня получается) результаты
Я правильно понял, у вас не работает второй вызов, который вы делаете в родителе (ресурсе 1-го уровня)?
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
да
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
У вас параметр resources пустой. По идее вам нужно вызвать сначала ресурсы второго уровня, т.е. без параметра resources, а в чанке categoryTpl вызвать так как сейчас.
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
А если вы так и делаете, то тогда вы забыли у тв префикс поставить, [[+tv.blabla]]
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
в основном вызове я вызываю перечень дочерних ресурсов. а шаблон этого вызова содержит второй вызов - где уже есть resources=blabla (который делает запрос в базу)
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
по логике - должно срабатывать
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
вот первый возов
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
[[!pdoResources?
               &tpl=parentCategoryTpl
               &sortdir=ASC
               &sortby=menuindex
               &limit=100
               &depth=0
               &parents=[[*id]]
               &includeTVs=imgCover,procInThisCategory
             ]]
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
Это основной вызов?
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
а вот чанк его шаблона:
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
[[!pdoResources?
 &tpl=categoryTpl
 &sortdir=ASC
 &sortby=menuindex
 &limit=100
 &depth=0
 &includeTVs=imgCover,procInThisCategory
 &parents=[[+id]]
 &resources=[[+tv.procInThisCategory]]
]]
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
Артур Шевченко
Это основной вызов?
да
источник

АШ

Артур Шевченко... in MODX. Русскоязычное сообщество.
Вы говорили что ресурсы в ТВ не являются дочерними по отношению к тому ресурсу чья ТВ, тогда parents = 0
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
Артур Шевченко
Вы говорили что ресурсы в ТВ не являются дочерними по отношению к тому ресурсу чья ТВ, тогда parents = 0
ГЕНИАЛЬНО!!!
источник

XY

Xander Yanov in MODX. Русскоязычное сообщество.
все равно какая-то некорректная работа
источник