MIGX и вывод одной превьюшки из галереи
        Здравствуйте. Столкнулся с неопознанным. У меня есть структура вида 
В чём проблема: он действительно выводит, но при этом он пишет мне вот такие URL'ы:
Но 22 — это НЕ id дочернего документа, откуда берётся галерея, это id документа из которого вызывается getImageList. Что интересно, если я рядом с getImageList пишу [[+id]] то он выводит мне правильный id дочернего документа а не 22. Что странно, имена файлов он пишет совершенно правильно, именно из разных директорий resourceimages, загвоздка именно в 22.
    
    
                                                                                
            Каталог
-- Товар 1
-- Товар 2В каждом товаре есть галерея MIGX со всевозможными фотками оного. Я пытаюсь одну из этих фоток вывести на страницу каталога. Делаю это таким запросом:[[!pdoMenu? 
&includeTVs=`vendorImage,catImage` 
&parents=`[[~id]]`
&sortBy=`pagetitle`
&levelClass=`level` 
&tplOuter=`@INLINE [[+wrapper]]`
&tpl=`categoryItem`
&tplCategoryFolder=`categoryItem`
]]В categoryItem, соответственно, есть вот такой код: [[getImageList? &docid=`[[+id]]` &tvname=`resourcealbum` &tpl=`CategoryItemImage` &limit=`1`]]И в чанке CategoryItemImage выводится всего лишь одна строчка: [[+image]].В чём проблема: он действительно выводит, но при этом он пишет мне вот такие URL'ы:
/assets/resourceimages/22/lenovo-desktop-thinkcentre-edge-72z-front-view.png Но 22 — это НЕ id дочернего документа, откуда берётся галерея, это id документа из которого вызывается getImageList. Что интересно, если я рядом с getImageList пишу [[+id]] то он выводит мне правильный id дочернего документа а не 22. Что странно, имена файлов он пишет совершенно правильно, именно из разных директорий resourceimages, загвоздка именно в 22.
Комментарии: 9
                Не используется ли у вас случайно migxResourceMediaPath для картинок?            
                    
                Делалось по вот этому хауту: rtfm.modx.com/extras/revo/migx/migx.tutorials/migx.use-resource-specific-mediasource-and-multifile-uploader
По-моему как раз это он самый.
                    По-моему как раз это он самый.
                Насколько я помню, нормального решения этой проблемы нет. Предлагаемое решение — вызывать getImageList с processTV=`0`, а правильную ссылку формировать вручную (/assets/resourceimages/[[+id]]/[[+image]]). Хотя может уже и поменялось что-то с тех пор, как я видел похожую проблему :)            
                    
                Спасибо, сделал по вашему совету в чанке вывода вот так:
Осталось две проблемы: почему в данном случае не работает phpthumbof?
                    /assets/resourceimages/[[+id]]/[[+image:phpthumbof=`h=100&w=100`]]Это помогло. Осталось две проблемы: почему в данном случае не работает phpthumbof?
                Правильный вариант выглядит так:
                    [[phpthumbof? &input=`/assets/resourceimages/[[+id]]/[[+image]]` &options=`h=100&w=100`]]Если не заработает, можно попробовать [[+property.docid]] вместо [[+id]].            
                Спасибо, всё прекрасно заработало, лохматость повысилась и хвост ломить перестало. Вы очень помогли.            
                    
                И второй вопрос. Там, где у меня вызов getImageList он выглядит так:
                    <a href="[[+link]]" [[+attributes]] class="thumbnail"  
		style="background-image: url([[getImageList? &docid=`[[+id]]` &processTVs=`0` &tvname=`resourcealbum` &tpl=`CategoryItemImage` &limit=`1`]]);">Соответственно если в MIGX нет изображений то он выведет <a.... style="background-image: url(   )">И «заткнёт» изображение по умолчанию, которое там стоит. Как можно реализовать проверку на существование изображений в галерее MIGX?            
                Можно background-image: url() перенести в чанк CategoryItemImage. Тогда если не будет изображений, стиль останется без background-image.            
                    
                Столкнулся с похожей проблемой. Брал за основу тот же метод:
https://docs.modx.com/extras/revo/migx/migx.tutorials/migx.use-resource-specific-media-source-and-multifile-uploader#MIGX.Useresource-specificmediasourceandmultifile-uploader-Createthedynamicresourcespecificmediasource
Использовался migxResourceMediaPath (для определения basePath и baseUrl Источника файлов):
https://docs.modx.com/extras/revo/migx/migx.frontend-usage
Первая галерея отобразилась нормально:
                    https://docs.modx.com/extras/revo/migx/migx.tutorials/migx.use-resource-specific-media-source-and-multifile-uploader#MIGX.Useresource-specificmediasourceandmultifile-uploader-Createthedynamicresourcespecificmediasource
Использовался migxResourceMediaPath (для определения basePath и baseUrl Источника файлов):
[[migxResourceMediaPath? &pathTpl=`assets/resourceimages/{id}/` &createFolder=`1`]]Решил вывести несколько MIGX галерей от разных ресурсов на одной странице через getResources и getImageList:https://docs.modx.com/extras/revo/migx/migx.frontend-usage
Первая галерея отобразилась нормально:
/assets/resourceimages/1/foto_gal1.jpgа для последующих галерей путь до фото упрямо прописывался от первой — id ресурса не менялся на нужный (такое ощущение, что он кэшировался):/assets/resourceimages/1/foto_gal2.jpg/assets/resourceimages/1/foto_gal3.jpgПомогло отключение кэширования при вызове migxResourceMediaPath в настойках Источника файлов:[[!migxResourceMediaPath? &pathTpl=`assets/resourceimages/{id}/` &createFolder=`1`]]После этого, id стал корректным для каждой из галерей:/assets/resourceimages/1/foto_gal1.jpg/assets/resourceimages/2/foto_gal2.jpg/assets/resourceimages/3/foto_gal3.jpg            
                            Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.