Select one or more tags, then press “Search Plugins”

Find Plugin with any / all of the selected criteria
Search Plugin

Defyn Media Offload Wordpress Plugin - Rating, Reviews, Demo & Download

Defyn Media Offload Wordpress Plugin - Rating, Reviews, Demo & Download
No ratings yet
Free
Follow for free plugins, new theme releases and theme news

Plugin Description

Defyn Media Offload copies your uploads – including every generated
thumbnail size – to an S3-compatible object store, serves them from your CDN,
and (optionally) removes the local copies so your site fits within strict host
storage limits.

It was built for a large WooCommerce + multi-vendor store running on managed
WordPress (where Jetpack’s image CDN virtualises some thumbnail sizes), so it is
hardened against the edge cases that break naive offload plugins.

Key features

  • Automatic offload on upload, after all thumbnail sizes are generated – including front-end (vendor) uploads.
  • Serves product images, galleries, variation images, responsive srcset, REST API URLs and content-embedded images from the CDN.
  • Resumable, cursor-based bulk migration for very large libraries (survives dropped SSH sessions). WP-CLI is the supported path; a browser-driven runner and Action Scheduler background runner are also provided.
  • Optional, decoupled “remove local” pass so migration and deletion stay safe and reversible.
  • Optional mirror-delete: removing an attachment removes its objects from the store.
  • Handles Jetpack “virtual” thumbnail sizes (skip-and-log, never stalls).
  • WooCommerce downloadable/protected files are stored privately and never made public-read.
  • Works with the AWS SDK for PHP v3, namespace-isolated with php-scoper so it never conflicts with other plugins’ bundled AWS SDK.

Configuration

For best security, define credentials as constants in wp-config.php:

define( 'OSMO_KEY',      'your-access-key' );
define( 'OSMO_SECRET',   'your-secret-key' );
define( 'OSMO_BUCKET',   'your-bucket' );
define( 'OSMO_REGION',   'syd1' );
define( 'OSMO_ENDPOINT', 'https://syd1.digitaloceanspaces.com' );
define( 'OSMO_CDN',      'https://cdn.example.com' );

Otherwise enter them on Media Media Offload.

External services

This plugin connects to one external service: the S3-compatible object storage
endpoint that you configure (for example DigitalOcean Spaces, Amazon S3,
Wasabi, or a self-hosted MinIO server). It is used to store and serve your media
files.

  • What is sent, and when: when you upload media (or run a migration), the media
    files and their object keys (the uploads-relative path, e.g.
    2026/06/image.jpg) are uploaded to the bucket you configured, using the
    access key and secret you provide. URL rewriting and verification read object
    keys back from the same bucket.
  • The plugin does not contact any other server. It does not collect analytics,
    telemetry, or usage data, and it never “phones home” to the author.
  • You must supply your own credentials and accept the terms and privacy policy
    of whichever storage provider you choose. DigitalOcean Spaces:
    https://www.digitalocean.com/legal/terms-of-service-agreement /
    https://www.digitalocean.com/legal/privacy-policy . Amazon S3:
    https://aws.amazon.com/service-terms/ / https://aws.amazon.com/privacy/ .

Third-party libraries

This plugin bundles the AWS SDK for PHP v3 (Apache License 2.0, GPL-compatible)
and its dependencies (Guzzle, PSR interfaces, JMESPath, Symfony polyfills). The
SDK is namespace-isolated under OSMOVendor using php-scoper so it never
conflicts with an AWS SDK bundled by another plugin. This is namespacing, not
obfuscation – the bundled PHP remains fully human-readable.

The full source code and the build tooling (composer.json, scoper.inc.php,
build.sh, and the post-scope patch helpers in bin/) are available so the bundled
vendor/ directory can be reproduced from scratch with bash build.sh.

Screenshots

No screenshots provided


Reviews & Comments