Descrición
Need to swap a product photo, an updated PDF price list or a corrected logo without breaking a single link? Kodlo Media Replace overwrites the file of an existing attachment and keeps everything else exactly as it was:
- the attachment ID,
- the file name,
- the URL, including every thumbnail URL.
Pages, products, galleries and page builders that use the file show the new version right away. There is nothing to search and replace.
How it works
Open a file in the Media Library, click Replace file, choose the new file and confirm. That’s it.
What happens behind the scenes
- All image sizes are rebuilt with the same function WordPress runs for a new upload.
- Old thumbnail URLs keep working. When the new image has different proportions, thumbnail file names would normally change. The plugin recreates the old ones from the new image at their old dimensions, so URLs hard-coded in posts or page builders never return a 404 error.
- Large and rotated photos keep their URL (the “-scaled” and “-rotated” files WordPress creates).
- WebP and AVIF copies made by optimization plugins (photo.jpg.webp, photo.webp) are regenerated, so rewrite rules don’t keep serving the old picture.
- Browser and CDN caches: on the front end, every URL of a replaced file gets a version parameter (?kmr=…), so visitors download the new file immediately, even if the old one was cached for a year.
- Page caches are cleared automatically when one of these is active: WP Rocket, W3 Total Cache, LiteSpeed Cache, WP Super Cache, WP Fastest Cache, SiteGround Optimizer, WP-Optimize, Breeze, Hummingbird, Cache Enabler, Nginx Helper, WP Engine, Kinsta, Pantheon.
- Cloudflare (optional): the replaced file URLs can be purged from the Cloudflare edge. See the FAQ.
Simple by design
No settings page, no ads, no tracking. Works with images, PDF files, video, audio and documents.
The new file must have the same type as the old one (JPG for JPG, PDF for PDF), otherwise the URL would have to change.
External services
This plugin can connect to the Cloudflare API to remove replaced files from the Cloudflare cache. It is off by default and only works after you add a Cloudflare zone ID and API token to wp-config.php (see the FAQ).
When it is enabled, each time you replace a file the plugin sends a request to api.cloudflare.com with your zone ID, your API token and the URLs of the replaced file and its thumbnails (or a “purge everything” request if you enabled that option). No other data is sent.
This service is provided by Cloudflare, Inc.: Terms of Service, Privacy Policy.
Capturas




Instalación
- Install the plugin from Plugins > Add New, or upload the ZIP file.
- Activate it.
- Go to Media > Library, open a file and use the “Replace file” box.
Preguntas frecuentes
-
In the Media Library list view, hover over a file and click “Replace file”. In the grid view, open a file and click “Replace file”. Both lead to the edit screen of the file, where the “Replace file” box is in the right column.
-
Will the URL or ID change?
-
No. The file is overwritten in place. The ID, file name, URL, title, alt text, caption and description stay as they are.
-
Can I replace a JPG with a PNG?
-
No. Changing the type would change the file extension and therefore the URL, which is exactly what this plugin avoids. Convert the new file to the same type first.
-
I still see the old image. What should I check?
-
Reload the page once without the browser cache (Ctrl+F5 or Cmd+Shift+R). Pages rendered by WordPress get the new version parameter automatically. Files opened by a direct link (for example a PDF link sent by email), or images referenced in external CSS files, can still be served from a CDN until its cache expires. For Cloudflare, set up the automatic purge described below.
-
How do I enable the Cloudflare purge?
-
Create an API token in Cloudflare (My Profile > API Tokens > Create Custom Token) with the permission Zone > Cache Purge > Purge for your domain. Then add this to wp-config.php:
define( 'KODLO_MR_CF_ZONE_ID', 'your-zone-id' ); define( 'KODLO_MR_CF_API_TOKEN', 'your-api-token' );If Cloudflare also caches your HTML pages (APO or a “Cache Everything” rule), add:
define( 'KODLO_MR_CF_PURGE_EVERYTHING', true ); -
Does it work with offloaded media (Amazon S3 and similar)?
-
No. The plugin replaces files in the local uploads folder. Media offloaded to external storage is not supported.
-
Does it work on multisite?
-
Yes, on each site of the network.
-
Can I use it from code or WP-CLI?
-
Yes:
Kodlo_Media_Replace::replace( $attachment_id, '/path/to/new-file.jpg' );The new file is moved into place. The function returns an array on success or a WP_Error object.
-
Which hooks are available?
-
kodlo_mr_replaced(action): fires after a replacement with the attachment ID and the list of file URLs. Use it to purge other caches.kodlo_mr_purge_page_cache(filter): return false to skip clearing page caches.kodlo_mr_rewrite_html(filter): return false to stop adding version parameters to the front-end HTML.
Comentarios
Non hai recensións para este plugin.
Colaboradores e desenvolvedores
“Kodlo Media Replace” é un software de código aberto. As seguintes persoas colaboraron con este plugin.
ColaboradoresTraduce “Kodlo Media Replace” ao teu idioma.
Interesado no desenvolvemento?
Revisa o código, bota unha ollada aorepositorio SVN, ou subscríbete ao log de desenvolvemento por RSS.
Rexistro de cambios
1.0.0
- First release.