Скачивание и оптимизация изображений для интернет магазина
Подготовка изображений к загрузке в интернет-магазин или на сайт-каталог очень важна и может отнять много времени. В этой статье мы расскажем, к чему может привести недооценка этого процесса и как подогнать все фото к одному формату в пару кликов без Photoshop.
Есть различные сценарии того, как вам могут попасть картинки для загрузки на сайт. Фото может дать вам заказчик, или вы сами будете загружать их с других сайтов. Но в любом случае нет гарантий, что все изображения окажутся стандартизированными.
Предположим, вы подготовили CSV таблицу для импорта в woocommerce, добавили URL картинок в колонку Image; woocommerce успешно их импортировал, сформировал категории и карточки товаров и добавил в них фото. И тут вы обнаруживаете, что сетка карточек хоть и ровная, но в одном ряду строки не сходятся: все выглядит ступенчато, в одной карточке описание опустилось вниз, в другой оно стоит посередине и т. д. И все дело в том, что картинки оказались разными по высоте.
Первым делом хочется “поиграть” настройками темы Woodmart. Вы задаете жесткие пропорции – но в результате получаете кадрирование картинок. Это портит их внешний вид и уменьшает информативность, а исправить это настройками темы нереально.
Рассказываем, как избежать такого факапа.
Вернемся к тому моменту, где вы создавали таблицу товара с URL картинок. После ее создания вам необходимо скопировать колонку с URL, вставить ее в новый .txt документ и сохранить, например, под именем links.txt (ВНИМАНИЕ: не используйте кириллические названия – это важно для следующих шагов).
Скачивание изображений
Скачиваем файл wget.exe
Создаем файл links.txt со списком URL картинок.
В той же папке создаете файл download.bat. Этот cкрипт скачает и сохранит изображения с указанных URL, используя wget
@echo off
set "WGET=C:\полный путь к файлу\wget.exe"
set "OUTDIR=D:\TEMP_IN"
set "LINKS=%~dp0links.txt"
cd /d "%OUTDIR%"
for /f "usebackq delims=" %%A in ("%LINKS%") do (
echo Скачиваю: %%A
"%WGET%" -nc -nd "%%A"
)
pause
Оптимизация изображений
Отлично – вы скачали все картинки, и теперь их нужно привести к одному формату по пропорциям сторон. Это необходимо, если у вас, например, есть картинка, вытянутая по вертикали, которая не вписывается в карточку товара, делая изображение кадрированным и неполным. В Photoshop сделать это за пару кликов не получится. Поэтому нам понадобится ImageMagick и еще один скрипт.


Скачиваем ImageMagick for Windows (x64 static)
Установить нужно с галочкой “Add to PATH”
Создаем файл 1-1.bat
@echo off
setlocal enabledelayedexpansion
set "SRC=D:\TEMP_IN"
set "DST=D:\TEMP_OUT"
echo Обработка изображений из: %SRC%
echo Сохранение в: %DST%
pause
for %%F in ("%SRC%\*.jpg") do (
for /f "tokens=1,2" %%A in ('magick identify -format "%%w %%h" "%%F"') do (
set /a W=%%A
set /a H=%%B
set /a SIZE=!W!
if !H! GTR !W! set /a SIZE=!H!
echo Сохраняю %%F как !SIZE!x!SIZE!
magick "%%F" -gravity center -background white -extent !SIZE!x!SIZE! "%DST%\%%~nxF"
)
)
pause
Все готово!
Да этот способ не самый очевидный, но если все сделать правильно, он сэкономит от 2-3 дней до нескольких недель скачивания и редактирования вручную.
