ms2GalleryRes не работает на страницах с pdoPage
Ситуация следующая:
В сайдбаре на сайте идет вывод ms2GalleryResources чз pdoPage:
pdoPage с &element=`ms2GalleryResources` почему то перехватывает id и шаблон вывода другого, присутствующего на странице вывода pdoPage и начинает повторно выводить их!
Что за нездоровое поведение?
В сайдбаре на сайте идет вывод ms2GalleryResources чз pdoPage:
[[!pdoPage?
&parents=`4`
&element=`ms2GalleryResources`
&includeContent=`1`
&prepareTVs=`1`
&processTVs=`1`
&showHidden=`0`
&tplWrapper=`@INLINE <div class="single-item rab-side">[[+output]]</div>`
&tpl=`proj-side-tpl`
&typeOfJoin=`inner`
&includeThumbs=`750x280`
&includeOriginal=`0`
]]
Как видите, указан родитель. И все работает отлично, но, если на странице есть другой, обычный вывод pdoPage, такой например:[[!pdoPage?
&parents=`5`
&depth=`0`
&includeContent=`1`
&prepareTVs=`1`
&showHidden=`0`
&processTVs=`1`
&limit=`10`
&tpl=`blog-tpl`
&includeTVs=`blog-img`
]]
то в выводе ms2GalleryResources начинает выводится именно эти результаты, вместо нужных. Т.е. pdoPage с &element=`ms2GalleryResources` почему то перехватывает id и шаблон вывода другого, присутствующего на странице вывода pdoPage и начинает повторно выводить их!
Что за нездоровое поведение?
Комментарии: 11
Что за нездоровое поведение?Для начала, как минимум, нужно прочитать документацию и найти там параметр &pageVarKey, который позволяет разделять пагинации на одной странице.
Потом посмотреть вывод сниппетов через &showLog, какие в них приходят команды и как они отрабатывают. Проверить, не кэшируется ли чего.
А вот если всё это уже никак не помогает — тогда и писать про «нездоровое поведение».
showLog ms2GalleryRes
0.0002072: pdoTools loaded
0.0000451: xPDO query object created
0.0005012: Included list of tvs: blog-img
0.0003538: leftJoined modTemplateVarResource as TVblog-img
0.0006070: 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`, `content`, `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.0000141: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `tv.blog-img`
0.0000391: Processed additional conditions
0.0003841: Added where condition: modResource.parent:IN(5), modResource.published=1, modResource.hidemenu=0, modResource.deleted=0
0.0000679: Replaced TV conditions
0.0002000: Sorted by modResource.publishedon, DESC
0.0000122: Limited to 10, offset 0
0.0004139: 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`.`content`, `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(`TVblog-img`.`value`, '') AS `tv.blog-img` FROM `modx_site_content` AS `modResource` LEFT JOIN `modx_site_tmplvar_contentvalues` `TVblog-img` ON `TVblog-img`.`contentid` = `modResource`.`id` AND `TVblog-img`.`tmplvarid` = 3 WHERE ( `modResource`.`parent` IN (5) AND `modResource`.`published` = 1 AND `modResource`.`hidemenu` = 0 AND `modResource`.`deleted` = 0 ) ORDER BY modResource.publishedon DESC LIMIT 10 "
0.0001848: SQL executed
0.0001140: Total rows: 10
0.0001559: Rows fetched
0.1441650: Prepared and processed TVs
0.0018768: Loaded "modChunk" with name "blog-tpl"
0.0247190: Returning processed chunks
0.1724942: Total time
8 126 464: Memory usage
showLog обычного pdoPage0.0002072: pdoTools loaded
0.0000451: xPDO query object created
0.0005012: Included list of tvs: blog-img
0.0003538: leftJoined modTemplateVarResource as TVblog-img
0.0006070: 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`, `content`, `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.0000141: Added selection of modTemplateVarResource: IFNULL(`value`, '') AS `tv.blog-img`
0.0000391: Processed additional conditions
0.0003841: Added where condition: modResource.parent:IN(5), modResource.published=1, modResource.hidemenu=0, modResource.deleted=0
0.0000679: Replaced TV conditions
0.0002000: Sorted by modResource.publishedon, DESC
0.0000122: Limited to 10, offset 0
0.0004139: 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`.`content`, `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(`TVblog-img`.`value`, '') AS `tv.blog-img` FROM `modx_site_content` AS `modResource` LEFT JOIN `modx_site_tmplvar_contentvalues` `TVblog-img` ON `TVblog-img`.`contentid` = `modResource`.`id` AND `TVblog-img`.`tmplvarid` = 3 WHERE ( `modResource`.`parent` IN (5) AND `modResource`.`published` = 1 AND `modResource`.`hidemenu` = 0 AND `modResource`.`deleted` = 0 ) ORDER BY modResource.publishedon DESC LIMIT 10 "
0.0001848: SQL executed
0.0001140: Total rows: 10
0.0001559: Rows fetched
0.1441650: Prepared and processed TVs
0.0018768: Loaded "modChunk" with name "blog-tpl"
0.0247190: Returning processed chunks
0.1724942: Total time
8 126 464: Memory usage
загружают одинаковые чанки-шаблоны, хотя указаны разные. Как такое может быть. и вообще получается будто один и тот же вывод
Мне то это нахера нужно? Сам читай и разбирайся, для кого этот функционал вообще в pdoTools — для меня одного, что ли?
Вставляю 2 вызова с пустыми чанками на тестовый сайт
Смотрю вывод логов — 2 разных вывода. Переключение пагинации меняет независимо 2 эти лога. Только у меня, что ли, оно работает?
Ну надоело, реально, каждый день одно и то же.
Вставляю 2 вызова с пустыми чанками на тестовый сайт
[[!pdoPage?
&parents=`0`
&element=`ms2GalleryResources`
&typeOfJoin=`left`
&includeOriginal=`0`
&tpl=`@INLINE `
&pageVarKey=`page1`
&pageNavVar=`page1.nav`
&showLog=`1`
]]
[[!+page1.nav]]
[[!pdoPage?
&parents=`0`
&tpl=`@INLINE `
&pageVarKey=`page2`
&pageNavVar=`page2.nav`
&showLog=`1`
]]
[[!+page2.nav]]
Смотрю вывод логов — 2 разных вывода. Переключение пагинации меняет независимо 2 эти лога. Только у меня, что ли, оно работает?
Ну надоело, реально, каждый день одно и то же.
Причем тут вообще пагинация? Ты вопрос нормально прочитал? Пагинации как раз работают нормально и отдельно в разных вызовах. Проблема в выводе одного и того же контента, при двух разных выводах pdoPage и ms2GalleryResources. Ты попробуй на своем тестовом сервере вывод не с пустыми чанками, а с контентом, и посмотри что получится?
Что у тебя там каждый день одно и тоже и надоело, непонятно. Но у тебя что ни ответ, то в агрессивной форме, вот это реально. Не надоело? Раз в полгода что нибудь спросишь на твоем сайте, либо тишина, либо плевки. Нахер тогда вообще создавать поддержку
Что у тебя там каждый день одно и тоже и надоело, непонятно. Но у тебя что ни ответ, то в агрессивной форме, вот это реально. Не надоело? Раз в полгода что нибудь спросишь на твоем сайте, либо тишина, либо плевки. Нахер тогда вообще создавать поддержку
Вот держи вывод с чанками:
Разницу видишь? Если нет, то подсказываю: в первом выводе получаются id ресурсов, а во втором pagetitle. И они, блядь, разные.
Вот именно это мне и надоело — отвечать на тупые вопросы простейшей проверкой на чистом сайте, когда, внезапно!, всё работает и выясняется, что проблема вовсе не в компоненте, а в какой-нибудь херне у вопрошающего на сайте.
Не хочешь получать раздраженные ответы — не задавай тупых вопросов. А если уж так хочется, то будь добр проверить работу дополнения на чистом сайте, а потом уже спрашивать.
&tpl=`@INLINE {{+id}}`
и
&tpl=`@INLINE {{+pagetitle}}`
Разницу видишь? Если нет, то подсказываю: в первом выводе получаются id ресурсов, а во втором pagetitle. И они, блядь, разные.
Вот именно это мне и надоело — отвечать на тупые вопросы простейшей проверкой на чистом сайте, когда, внезапно!, всё работает и выясняется, что проблема вовсе не в компоненте, а в какой-нибудь херне у вопрошающего на сайте.
Не хочешь получать раздраженные ответы — не задавай тупых вопросов. А если уж так хочется, то будь добр проверить работу дополнения на чистом сайте, а потом уже спрашивать.
Думаешь все такие ленивые и чуть что бегут к тебе с вопросом? Я был добр, проверял на чистом сайте, и угадай что? Нет, не работает. А у тебя работает. Знаешь почему? Нет, не потому что на сайте у тебя нет какой нибудь херни, а у меня она везде.
Я не зря показал свои выводы в первом сообщений, и если бы ты попробовал вывести точно так же, то и у тебя оно не работало. Почему? Сейчас разобрался. Убрал из вывода ms2GalleryResources
&tplWrapper=`@INLINE [[+output]]`, и все заработало как надо.
Наверно, его в принципе нельзя использовать там? Возможно. Я не знал. Ты знал? (Тогда что является аналогом в выводе pdoPage?) И если бы просто внимательнее посмотрел мои выводы, мог об этом сказать, а не начинать демагогию про кеи.
Или, его там можно использовать, но при двойном выводе оно работает вот так, и это нездоровое поведение?
Но при любом раскладе, тебе, как минимум, пустырника 30 капелек ежедневно пора принимать, нервишки то, кончились.
Я не зря показал свои выводы в первом сообщений, и если бы ты попробовал вывести точно так же, то и у тебя оно не работало. Почему? Сейчас разобрался. Убрал из вывода ms2GalleryResources
&tplWrapper=`@INLINE [[+output]]`, и все заработало как надо.
Наверно, его в принципе нельзя использовать там? Возможно. Я не знал. Ты знал? (Тогда что является аналогом в выводе pdoPage?) И если бы просто внимательнее посмотрел мои выводы, мог об этом сказать, а не начинать демагогию про кеи.
Или, его там можно использовать, но при двойном выводе оно работает вот так, и это нездоровое поведение?
Но при любом раскладе, тебе, как минимум, пустырника 30 капелек ежедневно пора принимать, нервишки то, кончились.
А так работает?
P.P.S.: Это таки есть в документации)
&tplWrapper=`@INLINE {{+output}}`
P.S.: Если вкл феном — весь вызов в {ignore}...{/ignore}P.P.S.: Это таки есть в документации)
Я не знал. Ты знал?Не только знал, но и расписал всё в документации.
В INLINE чанках нельзя указывать сниппеты, другие чанки или фильтры вывода через обычные теги, потому что так парсер MODX обработает их в первую очередь, и сниппет получит совсем не то, что вы хотели.
Поэтому для INLINE чанков предусмотрена замена [[+]] на {{+}} — такие теги MODX пропускает, а pdoTools при работе конвертирует их как нужно. Конечно, вы всё равно можете использовать теги MODX, если вам нужно, чтобы в чанк попала уже обработанная информация
А вот здесь еще подробнее. Но только дураки читают документацию, правда же?
И если бы просто внимательнее посмотрел мои выводы, мог об этом сказатьПрости пожалуйста мою невнимательность, я так виноват перед тобой, очень стыдно, извини еще раз.
Нет, не только. Да, недосмотрел. Моя ошибка, твои примочки работают без перебоев, круто, молодец, все шикарно.
Однако, опять же, в моем выводе ты этого не заметил. Ты не заметил, я не дочитал, все млять люди, а не роботы, а мог бы просто подсказать в двух строках, как выше сделал уважаемый Droug, и минус 6 постов ненужной агрессивной полемики.
P.S. пустырнику, правда..
Однако, опять же, в моем выводе ты этого не заметил. Ты не заметил, я не дочитал, все млять люди, а не роботы, а мог бы просто подсказать в двух строках, как выше сделал уважаемый Droug, и минус 6 постов ненужной агрессивной полемики.
P.S. пустырнику, правда..
пустырнику, правда.У меня в аптеке уже скидка 15% — с этой работой нихера не помогает.
Лучше я отключу уведомления о новых вопросах и варитесь тут сами, как хотите.
Нинада отключать. Не ругайтесь. Всё хорошо…
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.