pdoPage + AJAX + getImageList + phpThumbOf
В заголовке лимит на символы не дает охарактеризовать проблему :)
В общем суть такая, пытаюсь я используя pdoPage делать до загрузку элементов из MIGX методом &ajaxMode=`button` и вроде бы все получается, но не отрабатывает phpThumbOf при последующих «догрузок» элементов.
По порядку, вызываю pdoPage:
Содержимое чанка migx_TEST:
Пробуем, открываем страницу, видим:
Может есть у кого нибудь подобный опыт связи всего этого?
В общем суть такая, пытаюсь я используя pdoPage делать до загрузку элементов из MIGX методом &ajaxMode=`button` и вроде бы все получается, но не отрабатывает phpThumbOf при последующих «догрузок» элементов.
По порядку, вызываю pdoPage:
<div id="pdopage">
<div class="rows">
[[!pdoPage:default=`В данном альбоме еще нет фотографий.`?
&element=`getImageList`
&tvname=`migx_photoGallery`
&limit=`1`
&tpl=`migx_TEST`
&processTVs=`migx_photoGallery`
[[-&prepareTVs=`migx_photoGallery` ]]
&docid=`[[*id]]`
&where=`{"visible:=":"1"}`
&ajaxMode=`button`
&ajaxElemMore=`#pdopage .btn-grey`
&ajaxTplMore=`@INLINE <div class="gallery-button"><button class="btn btn-grey"><i class="fa fa-refresh"></i> ПОКАЗАТЬ ЕЩЁ</button></div>`
]]
</div>
[[!+page.nav]]
</div>
TV migx_photoGallery содержит несколько полей, в том числе image, которое является inputTV на другое TV с типом ввода Image. Почему не сразу inputTVtype=image? Все просто, из-за указания определенного источника файла для выбора изображений. Но дело точно не в этом, я пробовал и так и эдак…Содержимое чанка migx_TEST:
[[+image]]
[[!phpthumbof? &input=`[[+image]]` &options=`&h=800&q=100`]]
пока так, для эксперимента.Пробуем, открываем страницу, видим:
assets/content/images/gallery/gallery7_b.jpg
/assets/components/phpthumbof/cache/gallery7_b.3388ce78fa35d900c3bb8aeb9a82feb040.jpg
Отлично, phpThumbOf сделал свое дело. Нажимаю «Показать ещё» и уже вижу это:assets/content/images/gallery/gallery8_b.jpg
Теперь phpThumbOf не сработал, выводит только [[+image]]… Жму еще:assets/content/images/gallery/gallery9_b.jpg
Аналогично! Путь есть, путь правильный, но phpThumbOf тупо не отрабатывает в чанке.Может есть у кого нибудь подобный опыт связи всего этого?
Комментарии: 9
Пробовали вызов phpthumbof сделать кэшируемым?
И вообще, посоветовал бы phpthumbon или pthumb. На старых проектах у меня с ними все работает.
И вообще, посоветовал бы phpthumbon или pthumb. На старых проектах у меня с ними все работает.
phpthumbof попробовал сделать кэшируемым — не помогло!
Попробовал установил phpthumbon — помогло! Спасибо большое за совет, про phpthumbon знал но что-то не подумал что будет разница в работе… Имеет смысл заменить phpthumbOF на phpthumbON во всем проекте?
Попробовал установил phpthumbon — помогло! Спасибо большое за совет, про phpthumbon знал но что-то не подумал что будет разница в работе… Имеет смысл заменить phpthumbOF на phpthumbON во всем проекте?
Да, имеет. Лично я заметил чуть больше скорости работы сайта.
Спасибо, но заметил особенность, что при «Очистить кэш», кэш phpthumbOF очищается, а вот phpthumbON не очищается… В настройках не нашел. Не задавались этим вопросом?
К сожалению не задавался этим вопросом, если что, напишу
Кстати, еще что заметил…
Вызов:
Вызов:
[[!pdoPage?
&element=`getImageList`
&tvname=`migx_photoGallery`
&limit=`1`
&tpl=`migx_TEST`
&processTVs=`migx_photoGallery`
... и т.д.
]]
При открытии данной страницы, phpthumbON кэширует сразу ВСЕ изображения, которые встречаются в TV migx_photoGallery, не зависимо от того, что что стоит limit=1 и выводится только первый элемент. phpthumbOF так не делал, он кэшировал только, что выводится по лимиту, а при подгрузке уже не срабатывал, НО, картинку выводил, если кэш был сделан ранее. Я пробовал ставить limit=999, вывести сразу все элементы, потом обратно менял limit=1 и тогда при подгрузке все выводилось. А вот уже новую картинку в подгружаемых данных сниппет phpthumbOF не обрабатывал. Не думаю что будет много элементов в MIGX-е, понаблюдаю!
Кстати, Migx после последнего обновления прекрасно работает с типом ввода Image и с разными источниками
Я пробовал, создавал TV MIGX, добавлял там тип ввода Image, этому TV MIGX указывал источник файлов отличный от Filesystem, но не помогало, при выборе изображения все равно открывается Filesystem.
Указываете прямо во «вкладках формы»:
Или через конфигурацию:
"fields":[
{
"field":"image",
"caption":"Изображение",
"inputTVtype":"image",
"sources":[
{
"context":"web",
"sourceid":2
}
]
}
.........
Или через конфигурацию:
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.