Plugin info

Total downloads: 401
Active installs: 50
Total reviews: 0
Average rating: 0
Support threads opened: 0
Support threads resolved: 0 (0%)
Available in: 1 language(s)
Contributors: 1
Last updated: 8/4/2025 (150 days ago)
Added to WordPress: 7/21/2025 (0 years old)
Minimum WordPress version: 5.0
Tested up to WordPress version: 6.8.3
Minimum PHP version: 7.4

Maintenance & Compatibility

Maintenance score

Maintained • Last updated 150 days ago

50/100

Is Replace External Images abandoned?

Likely maintained (last update 150 days ago).

Compatibility

Requires WordPress: 5.0
Tested up to: 6.8.3
Requires PHP: 7.4

Similar & Alternatives

Explore plugins with similar tags, and compare key metrics like downloads, ratings, updates, support, and WP/PHP compatibility.

Hotlink Protection
Rating 1.0/5 (5 reviews)Active installs 300
Hotlink2Watermark
Rating 3.5/5 (2 reviews)Active installs 30

Description

“Replace External Images” lets you import externally hosted images used in post content directly into your WordPress media library — either one by one or now with the new bulk import feature across multiple posts at once.

The plugin automatically replaces external URLs in the content with local media URLs, shows a live progress view, supports any image host, and updates featured images where needed.

Ideal for:
– site migrations
– pasted content from other sources
– cleaning up hotlinked images
– processing many posts in one go with the bulk importer

Full documentation available here: Replace External Images Docs

Installation

  1. Go to your WordPress dashboard.
  2. Navigate to “Plugins > Add New”.
  3. Search for “Replace External Images”.
  4. Click “Install Now” and then “Activate”.

Alternatively:

  1. Download the plugin as a ZIP file.
  2. Go to “Plugins > Add New > Upload Plugin”.
  3. Select the ZIP file, click “Install Now”, then “Activate”.

Once activated:

  • Open a post that contains externally linked images.
  • Click “Replace External Images” in the Tools section.
  • Watch the live progress bar and wait for completion.

Frequently Asked Questions

Does it overwrite existing media?

No — it only imports external images and skips media already in the library.

What happens to the image URLs?

They are updated to local media paths after import.

Can I undo the import?

Not automatically. Please make a backup before running the importer if you need to restore content later.

What happens with protected or blocked images?

Some image sources actively block hotlinking or automated downloads by returning a different content type (e.g. text/plain instead of image/jpeg).
This plugin detects such cases and skips the import gracefully — no image is saved, and the log explains why.

What if the post doesn’t have a featured image?

If a post has no featured image, the plugin will automatically set the first successfully imported image as the featured image.

Review feed

No reviews available

Screenshots

  1. A post with an externally hosted image. The "Replace External Images" panel appears in the editor sidebar. One click imports the image into the media library and updates the post to use the local version.

    A post with an externally hosted image. The "Replace External Images" panel appears in the editor sidebar. One click imports the image into the media library and updates the post to use the local version.

  2. Successful import confirmation with summary and return link.

    Successful import confirmation with summary and return link.

  3. Works in both Classic Editor and Gutenberg, including multi-image posts.

    Works in both Classic Editor and Gutenberg, including multi-image posts.

  4. Respecting protected content — import fails cleanly for non-image or restricted resources.

    Respecting protected content — import fails cleanly for non-image or restricted resources.

Changelog

1.1.0

  • NEW: Bulk import for external images across multiple posts

1.0.0

  • Initial public release
  • Live importer for external images
  • Works on individual post basis
  • Tested up to WordPress 6.8.1 and PHP 8.2