Remote Uploader

Offload media to a fast CDN host—without breaking Elementor or touching your theme.

Remote Uploader moves new media uploads to your remote server via FTP or SFTP, keeps your WordPress install light, and serves files from a clean subdomain (like https://dl.example.com/uploads). Everything stays visible in your Media Library, Elementor stays safe, and your site stays fast.


Why Remote Uploader

  • Faster sites: Lighten your origin and serve assets from a dedicated host or CDN.
  • Elementor-safe: Preserves Elementor CSS and paths automatically.
  • Zero template changes: URLs are swapped only when files are offloaded.
  • Admin clarity: Media Library shows “CDN” badges, with a live banner if your download host goes offline.
  • Automatic cleanup: Deleting an attachment removes its remote copies too.

Who It’s For

  • Content-heavy sites: Publishers, course platforms, media libraries.
  • Agencies: Standardize offloading across multiple client sites.
  • Anyone using a CDN behind an origin that supports FTP or SFTP.

How It Works

  1. Upload media normally in WordPress.
  2. WordPress generates all image sizes.
  3. Remote Uploader sends originals and sizes to your remote host (FTP/SFTP), then removes local copies.
  4. When WordPress renders an attachment URL, if the file is offloaded, it’s swapped to your download host (e.g., https://dl.example.com/uploads/...).
  5. Delete an attachment in WordPress? Remote Uploader deletes its remote copies too.

Key Features

  • FTP or SFTP: Custom port support.
  • Granular control: Offload only the file types you choose (jpg,png,webp,svg,mp4).
  • Per-attachment URL filter: Local URLs remain unless the file is actually offloaded.
  • Elementor protection: Uploads used by Elementor CSS are never hijacked.
  • Media Library badges: Offloaded files are clearly marked “CDN.”
  • Health monitoring: Admin banner if your _health endpoint doesn’t return ok.
  • Safe-by-default: Failed transfers keep local files intact and log errors.

Quick Setup (5 minutes)

  1. Install and activate the plugin.
  2. Go to Settings → Remote Uploader and set:
    • Download Host URL: https://dl.example.com/uploads
    • Protocol & Port: FTP (21) or SFTP (22)
    • Host, Username, Password
    • Base Directory on Remote: e.g., /domains/example.com/public_html/uploads
    • Allowed Extensions (comma-separated, no dots)
  3. Ensure your web server serves the same base directory at your download host URL.
  4. (Optional) Create a _health endpoint that returns ok.
  5. (Optional) Lock config in wp-config.php.

Requirements

  • WordPress with Media Library access.
  • Remote server reachable via FTP or SFTP.
  • For SFTP: PHP SSH2 extension installed.
  • Write permissions for the remote directory.

FAQs

Will this break Elementor?
No. Elementor CSS and the /uploads/elementor/ paths are preserved.

Do my URLs change everywhere?
Only for offloaded attachments when WordPress calls wp_get_attachment_url().

Does it migrate existing media?
No. It only offloads new uploads (migrate old media separately).

Can I choose which files are offloaded?
Yes—via the Allowed Extensions list.

What happens if the remote server goes down?
You’ll see a “CDN OFFLINE” admin banner. Offloaded files may be unavailable until recovery.

Are files deleted remotely when removed in WordPress?
Yes—originals and generated sizes are deleted on remote.

Does it work on Multisite?
Yes, with standard WordPress paths. For custom paths, test first.


Why Teams Choose Remote Uploader

  • No fragile rewrites or theme edits.
  • Works with any FTP/SFTP host and any CDN in front.
  • Clear admin UX and safe, fail-quiet transfer process.