PHPackages                             perfect-code/module-product-media-uploader - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. perfect-code/module-product-media-uploader

ActiveMagento2-module[File &amp; Storage](/categories/file-storage)

perfect-code/module-product-media-uploader
==========================================

This module for Magento 2 helps to download an image from external URL for further save it as a product media gallery entry.

1.0.5(4y ago)032GPL-3.0PHPPHP ^7.4|^8

Since Mar 26Pushed 4y ago1 watchersCompare

[ Source](https://github.com/zhartaunik/module-product-media-uploader)[ Packagist](https://packagist.org/packages/perfect-code/module-product-media-uploader)[ RSS](/packages/perfect-code-module-product-media-uploader/feed)WikiDiscussions main Synced 5d ago

READMEChangelog (4)Dependencies (5)Versions (5)Used By (0)

Introduction.
=============

[](#introduction)

This module for Magento 2 helps to download an image from external URL for further save it as a product media gallery entry.

The image will be saved on disk with the same name (name can be configured).

Configuration.
==============

[](#configuration)

Here you can define module basic settings. [![](img/catalog_configuration.png)](img/catalog_configuration.png)

Usage.
======

[](#usage)

Quickstart.
-----------

[](#quickstart)

Inject `\PerfectCode\ProductMediaUploader\Api\MediaEntryGeneratorInterface` to your constructor and push URL to the image you want to add to your product.

```
$mediaEntry = $this->mediaEntryGenerator->generate(
    'http://localhost/my-image.jpg',
);
/** @var \Magento\Catalog\Api\Data\ProductInterface $product */
$product->setMediaGalleryEntries([$mediaEntry]);
// ...
$this->productRepository->save($product);
```

This will save `my-image.jpg` to `pub/media` folder and assign this image on the product, based on settings configured above.

Save an image with a different title.
-------------------------------------

[](#save-an-image-with-a-different-title)

```
$mediaEntry = $this->mediaEntryGenerator->generate(
    'http://localhost/my-image.jpg',
    ['some_attribute' => $yourCustomTitle]
);
```

Then create a plugin on `\PerfectCode\ProductMediaUploader\Api\MediaEntryGeneratorInterface::getImageName` method and reuse pushed parameter 'some\_attribute'.

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity7

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~8 days

Total

4

Last Release

1485d ago

PHP version history (2 changes)1.0.0PHP ^7.4

1.0.4PHP ^7.4|^8

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/11556652?v=4)[Alexandr Skrashuk](/maintainers/zhartaunik)[@zhartaunik](https://github.com/zhartaunik)

---

Top Contributors

[![zhartaunik](https://avatars.githubusercontent.com/u/11556652?v=4)](https://github.com/zhartaunik "zhartaunik (6 commits)")

### Embed Badge

![Health badge](/badges/perfect-code-module-product-media-uploader/health.svg)

```
[![Health](https://phpackages.com/badges/perfect-code-module-product-media-uploader/health.svg)](https://phpackages.com/packages/perfect-code-module-product-media-uploader)
```

###  Alternatives

[smile/elasticsuite

Magento 2 merchandising and search engine built on ElasticSearch

8044.5M33](/packages/smile-elasticsuite)[mollie/magento2

Mollie Payment Module for Magento 2

1121.6M10](/packages/mollie-magento2)[dotdigital/dotdigital-magento2-extension

Dotdigital for Magento 2

50374.2k18](/packages/dotdigital-dotdigital-magento2-extension)[lizardmedia/module-varnish-warmer

Varnish Cache Warmer Magento2 module by Lizard Media

6276.8k](/packages/lizardmedia-module-varnish-warmer)[baldwin/magento2-module-image-cleanup

Magento 2 module which can cleanup old image files that are no longer being used

8190.4k](/packages/baldwin-magento2-module-image-cleanup)[mage-os/module-inventory-reservations-grid

Add a grid with the list of inventory reservations.

126.8k](/packages/mage-os-module-inventory-reservations-grid)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
