Вывод в шаблоне доп поле ч/з pdoResources- СТОПОР
Добрый день, стал в стопор, что я делаю не так?
Нужно вывести в шаблоне дополнительное поле с типом «текстовый редактор»
В шаблоне вывожу:
[[!pdoResources?
&limit=`1`
&tpl=`pomochElement`
&includeTVs=`nuzna-pomoch`
&toPlaceholder=`pomochOuter`
&showLog=`0`
]]
[[+pomochOuter:notempty=`
[[+pomochOuter]]
`]]
В чанке pomochElement
[[*nuzna-pomoch]]
Не выводит нихрена, плиз поможите
Нужно вывести в шаблоне дополнительное поле с типом «текстовый редактор»
В шаблоне вывожу:
[[!pdoResources?
&limit=`1`
&tpl=`pomochElement`
&includeTVs=`nuzna-pomoch`
&toPlaceholder=`pomochOuter`
&showLog=`0`
]]
[[+pomochOuter:notempty=`
[[+pomochOuter]]
`]]
В чанке pomochElement
[[*nuzna-pomoch]]
Не выводит нихрена, плиз поможите
Комментарии: 20
см. параметр tvPrefix у сниппета pdoResources
совершенно верно
Showlog что говорит?
Может у первого попавшегося ресурса TV не заполнено?
поле точно заполнено
вот лог
вот лог
0.0001972: pdoTools loaded
0.0000491: xPDO query object created
0.0005951: Included list of tvs: text-pod-kartoy
0.0003550: leftJoined modTemplateVarResource as TVtext-pod-kartoy
0.0005181: Added selection of modResource: `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.0000181: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `tv.text-pod-kartoy`
0.0005910: Processed additional conditions
0.0009260: Added where condition: modResource.parent:IN(94), modResource.published=1, modResource.deleted=0
0.0000169: Replaced TV conditions
0.0001891: Sorted by modResource.publishedon, DESC
0.0000069: Limited to 1, offset 0
0.0003672: SQL prepared "SELECT `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`, IFNULL(`TVtext-pod-kartoy`.`value`, '') AS `tv.text-pod-kartoy` FROM `modx_site_content` AS `modResource` LEFT JOIN `modx_site_tmplvar_contentvalues` `TVtext-pod-kartoy` ON `TVtext-pod-kartoy`.`contentid` = `modResource`.`id` AND `TVtext-pod-kartoy`.`tmplvarid` = 40 WHERE ( `modResource`.`parent` IN (94) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 ) ORDER BY modResource.publishedon DESC LIMIT 1 "
0.0001309: SQL executed
0.0000160: Rows fetched
0.0000229: Prepared and processed TVs
0.0000100: Returning processed chunks
0.0036912: Total time
6 553 600: Memory usage
Я правильно понимаю, что в вызове есть условие (where) касаемо TV с названием text-pod-kartoy?
если просто выводить [[*text-pod-kartoy]], то все выходит, а вот с &toPlaceholder нет
[[*text-pod-kartoy]] такая запись выводит поле ресурса на которой пользователь находится
да
Попробуйте убрать дефисы/тире из названия TV и попробуйте
переименовал поле в шаблоне
[[*textpodkartoy]]
лог:
—
[[!pdoResources?
&limit=`1`
&tpl=`tpl.textpodkartoy`
&includeTVs=`textpodkartoy`
&toPlaceholder=`textOuter`
&showLog=`1`
]]
---
[[+textOuter]]
---
---
чанк tpl.textpodkartoy[[*textpodkartoy]]
лог:
—
0.0001869: pdoTools loaded
0.0000582: xPDO query object created
0.0006430: Included list of tvs: textpodkartoy
0.0003319: leftJoined modTemplateVarResource as TVtextpodkartoy
0.0005670: Added selection of modResource: `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.0000191: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `tv.textpodkartoy`
0.0008039: Processed additional conditions
0.0015650: Added where condition: modResource.parent:IN(94), modResource.published=1, modResource.deleted=0
0.0000379: Replaced TV conditions
0.0002730: Sorted by modResource.publishedon, DESC
0.0000091: Limited to 1, offset 0
0.0004709: SQL prepared "SELECT `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`, IFNULL(`TVtextpodkartoy`.`value`, '') AS `tv.textpodkartoy` FROM `modx_site_content` AS `modResource` LEFT JOIN `modx_site_tmplvar_contentvalues` `TVtextpodkartoy` ON `TVtextpodkartoy`.`contentid` = `modResource`.`id` AND `TVtextpodkartoy`.`tmplvarid` = 40 WHERE ( `modResource`.`parent` IN (94) AND `modResource`.`published` = 1 AND `modResource`.`deleted` = 0 ) ORDER BY modResource.publishedon DESC LIMIT 1 "
0.0001628: SQL executed
0.0000200: Rows fetched
0.0000248: Prepared and processed TVs
0.0000069: Returning processed chunks
0.0046649: Total time
6 553 600: Memory usage
результат тот же чанк tpl.textpodkartoyЯ же говорю:
[[*textpodkartoy]]
[[*text-pod-kartoy]] такая запись выводит поле ресурса на которой пользователь находитсяВ чанке нужно писать:
[[+tv.textpodkartoy]]
да, если просто
[[*textpodkartoy]], все выходит.
если через плейсхолдер и чанк tpl.textpodkartoy (в чанке [[+tv.textpodkartoy]]) нихрена
[[*textpodkartoy]], все выходит.
если через плейсхолдер и чанк tpl.textpodkartoy (в чанке [[+tv.textpodkartoy]]) нихрена
из доки
&tvPrefix tv. Префикс для ТВ параметров.
В чанке pomochElement пробоввал
[[+tv.nuzna-pomoch]]
результат 0
&tvPrefix tv. Префикс для ТВ параметров.
В чанке pomochElement пробоввал
[[+tv.nuzna-pomoch]]
результат 0
Я верно понимаю, что вы хотите вывести TV у первого попавшегося дочернего ресурса?
сам спросил сам отвечу
ошибка была в том, что не указан текущий ресурс
вот так все работает
ошибка была в том, что не указан текущий ресурс
вот так все работает
[[!pdoResources?
&depth=`1`
&hideContainers=`0`
&resources=`[[*id]]`
&parents=`6`
&limit=`1`
&tpl=`text-main-down`
&includeTVs=`textpodkartoy`
&showLog=`0`
&toPlaceholder=`textpodkartoyOuter`
]]
<div class="text-main-down">
<div class="container">
[[+textpodkartoyOuter]]
<div class="push20"></div>
</div>
</div>
но если указать notempty не хочет выводить
[[+textpodkartoyOuter:notempty=`
<div class="text-main-down">
<div class="container"> [[+textpodkartoyOuter]]
<div class="push20"></div>
</div>
</div>
`]]
(
и не работает если указать иначе !empty
даже не знаю что ответить, но если поле не заполнено оно просто не выводится, т.е. нет необходимости в notempty
Так вы выводите TV этого же ресурса?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.