Генерация превью в формате webp для miniShop2
С приходом поддержки webp в MODX участились вопросы о возможности генерации превью товаров miniShop2 в этом формате. По началу казалось что все должно работать из коробки, но на практике этого нет.
Причиной оказалось отсутствие расширения webp в источнике файлов MS2 и в двух системных настройках ('upload_files','upload_images').
Для ленивых написал небольшой скрипт (запускать в консоли), который поможет решить эту задачу:
Причиной оказалось отсутствие расширения webp в источнике файлов MS2 и в двух системных настройках ('upload_files','upload_images').
Для ленивых написал небольшой скрипт (запускать в консоли), который поможет решить эту задачу:
foreach (['upload_files','upload_images'] as $option){
if($setting = $modx->getObject('modSystemSetting',['key'=>$option])){
$extensions = explode(',',$setting->get('value'));
if(!in_array('webp',$extensions)){
$extensions[] = 'webp';
$setting->set('value',implode(',',$extensions));
$setting->save();
}
}
}
$ms2images = 2; // ID источника miniShop2
$source = $modx->getObject('modMediaSource',$ms2images);
$props = $source->get('properties');
$props['thumbnailType']['options'][] = ['text'=>'webp','value'=>'webp'];
$props['imageExtensions']['value'] .= ',webp';
$props['allowedFileTypes']['value'] .= ',webp';
$source->set('properties',$props);
$source->save(); Комментарии: 19
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Не совсем понимаю для чего делать эти манипуляции при каждом обращении к источникам.
Тем более что уже отправлен PR и в дальнейшем эта штука будет работать из коробки
Это нет
за столько лет работы с MODX это окно ни разу не видел
Век живи — век учись.
prntscr.com/mzfq6c
Куда копать?
Попробовал в каталоге запустить половина изображений нормально, о половина просто пустое фото.
В настройках указал только ширину, высоту и f=webp.
Ни у кого такого не было?
Сделал всё как тут написано. Ради интереса генерировал сначала в jpg, а потом в webp один и тот же файл.
Размер одинаковый.
Может система, видя неизвестный формат, по-умолчанию в jpg генерирует и просто меняет расширение на webp?
Просто даже судя по caniuse мой IE11 и iOS7 не должны понимать webp, но они его отображают как надо!
Я на modhost.pro специально собирал ImageMagick 7 с поддержкой webp.
сами превьюшки 100% генерируются и в jpg и в web, при загрузке картинки в галерею товара?
они появляются в assets/images/products и в источнике файлов MS2Images
в tpl.msProducts.row этот $thumb не видит, показывает дефолтные small…
Тег [[++url]] ссылку на главную страницу, поэтому заменил на {$id | url}
в шаблоне категорий не было &includeThumbs=`120x90`,
и в чанке убрал {if $thumb?} и {else}…
оставил только это. Теперь работает.