"Upload Image by URL in WebP" для ocStore и OpenCart

Опубликовано в: Дополнения и утилиты

Модуль "Upload Image by URL in WebP" для ocStore 3.0.4.1

Версия модуля: 2.0
Автор: webitproff
Тестировалось на: ocStore 3.0.4.1, PHP 8.2, MySQL 8.0

 

 

Описание модуля

Модуль позволяет загружать изображения товаров напрямую по URL и сохранять их в формате WebP, добавляя их в галерею товара или устанавливая как основное изображение.

Это особенно удобно, если изображения уже размещены на стороннем сервере и не требуется скачивать их вручную, переименовывать и конвертировать. Модуль автоматически обрабатывает все основные форматы изображений — JPEG, PNG, WebP — и сохраняет их в оптимизированном виде для интернет-магазина.

Модуль интегрируется в административную панель ocStore и добавляет новый интерфейс в таб "Изображения" на странице редактирования товара, включая:

  • Поле для вставки URL изображения.
  • Чекбокс для установки изображения как основного.
  • Индикатор прогресса загрузки.
  • Автоматическое добавление нового изображения в список галереи товара.

Функционал модуля

  1. Загрузка изображения по URL
    Администратор вставляет ссылку на изображение, выбирает, будет ли оно основным, и нажимает "Загрузить".
  2. Поддержка форматов
    Модуль поддерживает:
    • JPEG / JPG
    • PNG
    • WebP
  3. Автоматическое создание имени файла и папки
    • Имя файла формируется через транслитерацию названия товара, модели, названия магазина и порядкового номера изображения.
    • Для хранения создается папка catalog/YYYY-MM-DD-H/, где YYYY-MM-DD-H — текущая дата и час.
  4. Конвертация и оптимизация изображений
    • Если изображение больше 900px по ширине, оно автоматически масштабируется до 900px, сохраняя пропорции.
    • Все изображения сохраняются в формате WebP с качеством 85%.
  5. Обновление базы данных
    • Если выбран флаг "Основное изображение", путь к изображению обновляет поле product.image.
    • Если флаг не выбран, изображение добавляется в таблицу product_image с правильным sort_order.
  6. Отображение в админке
    • Для новых изображений создается миниатюра размером 100x100px.
    • Изображения появляются в таблице галереи товара без необходимости обновления страницы.

Полный процесс работы с изображением

  1. Вставка ссылки
    Администратор вводит URL изображения в поле "URL изображения" и нажимает "Загрузить".
  2. Проверка валидности данных
    • Проверяется, введен ли URL и существует ли ID товара.
    • Если данные отсутствуют, пользователю возвращается ошибка.
  3. Получение данных о товаре
    • Модуль загружает информацию о товаре через модель catalog/product.
    • Если товар не найден, выводится ошибка.
  4. Генерация имени файла и директории
    • Название, модель и магазин транслитерируются в латиницу.
    • Создается уникальное имя файла в формате:
 
название-модели-id-товара-магазин-порядковыйномер.webp
  1.  
    • Папка для хранения создается автоматически по текущей дате и часу.
  2. Скачивание изображения
    • Используется cURL для получения данных с указанного URL.
    • Проверяется код ответа сервера (должен быть 200).
    • Если изображение недоступно — возвращается ошибка.
  3. Проверка формата изображения
    • Через finfo проверяется MIME-тип.
    • Поддерживаются только JPEG, PNG и WebP.
  4. Обработка изображения
    • Конвертируется в ресурс GD (imagecreatefromjpeg/png/webp).
    • Если ширина больше 900px — изображение масштабируется, сохраняя пропорции.
    • Сохраняется как WebP с качеством 85%.
    • Временный файл удаляется после обработки.
  5. Сохранение пути в базе данных
    • Если флаг "Основное изображение" активен — обновляется поле product.image.
    • Иначе — создается запись в product_image с корректным sort_order.
  6. Отображение пользователю
    • В админке миниатюра нового изображения появляется в таблице галереи.
    • Прогресс загрузки отображается в виде полосы с процентами.
    • После успешной загрузки администратор видит уведомление об успехе.

 

 

 


Преимущества модуля

  • Экономия времени на загрузку изображений.
  • Автоматическая конвертация в WebP для оптимизации скорости загрузки сайта.
  • Поддержка массовых операций через простое указание URL.
  • Интеграция с существующей галереей товаров ocStore.
  • Совместимость с PHP 8.2 и MySQL 8.0.


Рейтинг на основе отзывов:
Звезд получено: 0
Oтзывов всего: 0
Средняя оценка: 0
3 минут чтения
Владелец: Carbonate Sodium

Отзывы к товарам

Отзывов пока нет


Добавить в корзину

К этому товару прикреплен файл для загрузки.

upload_image_by_url_webp.ocmod.zip

Количество скачиваний файла 13

 

Цена по умолчанию 50 $

Доступность
Заплатить и скачать
Назначение или категория
Работа с медиа (фото, видео, файлы)
Версия OpenCart
3.0.x.x

Автор контента

webitproff

Онлайн

webitproff

Последняя авторизация: 19.07.2026 00:02

  • Чем могу помочь?

    Оказываю весь спектр услуг по CMF Cotonti. Разработка открытых и закрытых корпоративных интернет порталов, небольших социальных сетей, торговые площадки, маркетплейсы, биржи фриланса, каталоги товаров оптовых поставщиков, интернет-магазин под заказ, чтобы делать совместные покупки и групповые совместные продажи от имени нескольких продавцов.

  • Разработки на GitHub бесплатно
    • 04.12.2025 17:21
    • 04.01.2026 09:26
    • Язык:

    Витрина Market PRO

    CMS, Скрипт и Движок - веб сайта онлайн-витрины, интернет магазина инфопродуктов и цифровых товаров. Разные цены в разных валютах на товар. Онлайн-оплата в криптовалюте за товары и услуги.