Мои изображения продуктов имеют размер 500 пикселей, но при экспорте на eBay по-прежнему выдается сообщение о том, что изображение <500 пикселей.

magento.stackexchange https://magento.stackexchange.com//questions/48775

Вопрос

Я сделал «Ужасную вещь» и массово изменил размеры всех изображений от менее 500 пикселей до минимум 500 пикселей, выполнив следующие действия:

find -type d \( -path ./cache -o -path ./placeholder \) -prune -o  -type f -regextype posix-egrep -iregex '.*\.(jpg|gif|tif)$' -exec identify {} \; | awk '{ split($3, wh, /x/); } wh[1] < 500 && wh[2] < 500 { print $1; }'  | while read i; do convert $i -resize 500 -quality 90 $i ; done

Затем я удалил изображения размером 100x100 с помощью:

find ./ -name "resized*" -exec rm {} \;

Это отлично работало в файловой системе.Я удаляю кеш изображений Magento (подтверждено на уровне файловой системы)

К сожалению, когда я пытаюсь запустить M2EPro для проверки списков eBay, он получает сообщение об ошибке, что размер изображения <500 пикселей.

Если я возьму необработанное изображение и повторно сохраню его с помощью администратора Magento, оно будет принято и исправлено правильно, без ошибок.

Мой вопрос: Magento каким-то образом сохраняет или кэширует размеры изображения где-нибудь при загрузке? Как я могу сбросить или заставить Magento пересчитать это для всех изображений?

Это было полезно?

Решение

Я понял, что это из-за кэширования eBay, кэшируя URL-адрес изображения с моим 30-дневным истекшим кэш-контролем с Nginx.

Другие советы

Magento никогда не делает этого.

Он просто хранит изображения продуктов внутри. media/catalog/product/ каталог, всякий раз, когда изображение отображается во внешнем интерфейсе с измененным размером с помощью catalog/image Метод вспомогательного класса resize($width,$height), размер изображения продукта изменяется и кэшируется в media/catalog/product/cache.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с magento.stackexchange
scroll top