ImgChanger — AI Image Replacement

Description

Copyright claims over photographs are routine: a rights holder finds their image on someone else’s site and asks for compensation. The usual reaction is to delete the image — and then the page has a hole where the illustration used to be.

ImgChanger takes another route: the disputed image is replaced — by your own photograph or by a generated one. The page looks the way it did, and the other party’s photo is no longer on your site.

How it works

The plugin works with the media library. The attachment file is overwritten in place, so the attachment ID and every link to it keep working — the image updates at once everywhere it is used: in posts and pages, in WooCommerce products, in ACF fields, in featured images. Your content markup is never touched.

What it does

  • Two ways to replace: upload your own image, or generate one. Uploading is free and needs no license key — often your own photo of the same object is the better answer anyway.
  • Shows the original and the replacement side by side — you decide, and nothing on the site changes until you apply.
  • Backs up the original and all of its generated sizes before every replacement.
  • One-click rollback: the original file comes back byte for byte and the sizes are regenerated.
  • Filters: not touched yet, ready to apply, already replaced.
  • A usage map: the plugin scans the site once and then knows which entries show each image, so you can pick images by section — projects, posts, galleries — and see where a picture stands before replacing it. Attachment metadata alone does not answer this: WordPress only remembers where a file was uploaded, not where it is displayed.
  • Quality settings: redraw strength and a ban on text inside the generated image.

What you need

The plugin talks to the imgchanger.org service, which does the generation. You need a license key: right in the plugin settings you can get a free key for 5 replacements by email — no card, no registration. Further replacements are paid.

What the plugin does not do

Replacements are produced by a neural network, so it is worth looking at the result before applying it — that is exactly why the original and the replacement are shown side by side. The plugin works with images from the media library; images hardcoded into a theme are out of its reach.

External services

The plugin relies on the ImgChanger service, and for buying replacement packs — on the YooKassa payment service.

ImgChanger (api.imgchanger.org) generates replacements and keeps the license balance. The plugin contacts it:

  • when you press “Generate” — the selected image, the site’s domain name and the license key are sent; before generating, the service describes the image with a language model so that the replacement keeps the scene, and returns the description in the language of your admin area;
  • when you press “Describe” — the same image, domain name and license key are sent, and the service returns the description of the image;
  • when a plugin page is opened (at most once a minute) and when you press “Check now” — the license key and the domain name are sent to get the remaining balance;
  • when you request the free trial — the email address you enter and the domain name;
  • on the settings page — to get the list of packs and prices (nothing about your site is sent);
  • when you press “Pay” — the license key, the domain name and the chosen pack are sent, and the service returns the YooKassa payment page; after you come back, the plugin asks for the status of that payment by its number.

No personal data of your site’s visitors is collected or transmitted. Files attached to non-public entries (form submissions, requests, orders) are never sent.

Service: https://imgchanger.org/
Terms of use: https://imgchanger.org/ru/legal/
Privacy policy: https://imgchanger.org/ru/legal/

YooKassa (yoomoney.ru) accepts card payments for replacement packs. Only when you press “Pay”, the browser goes to the YooKassa payment page; card details are entered there and never pass through your site or the plugin. The license owner’s email address is passed to YooKassa for the receipt.

Service: https://yookassa.ru/
Terms of use: https://yoomoney.ru/document/pravila-raboti-servisa-yookassa
Privacy policy: https://yoomoney.ru/page?id=527708

Screenshots

Installation

  1. Install and activate the plugin.
  2. Open “ImgChanger Settings”, enter your email and press “Get the trial” — a key for 5 free replacements arrives right away. If you already bought a key, paste it into the field.
  3. Open “ImgChanger Replace images”, pick an image and press “Generate”.
  4. Compare the original with the replacement, then press “Apply”. The original goes to the backup.

FAQ

What happens to the links to the image?

Nothing breaks. The file is overwritten in place, so every post and product keeps pointing at the same attachment and updates at once. The plugin appends a version marker to the image URL after a replacement (?v=…), so browsers and CDNs fetch the new file instead of serving the old one from cache — visitors who already opened the page still see the replacement. Developers can switch that off with the imgchanger_bust_cache filter.

Can I get the original back?

Yes, with the “Restore the original” button. The original and all of its sizes are saved before the replacement in uploads/imgchanger/backups and stay there even after the plugin is deleted.

Does it work with WooCommerce and ACF?

Yes. Both store images as media library attachments, and the plugin replaces exactly that attachment file.

What does “not found in entries or settings” mean?

The usage map looks in entries of every public type (featured images, custom fields, galleries, editor markup, page builder data, images inserted by URL), in ACF options pages, theme settings (logo, site icon, header, background), widgets, and category and tag fields. It cannot see images whose path is written directly in theme templates or CSS, or images that sliders and page builders keep in their own database tables. So treat these images as candidates, not as certainly unused: check a couple of them on the site before replacing or deleting.

Why are some attachments missing from the list?

Files attached to entries that visitors never see — form submissions, requests, orders — are hidden on purpose. They are usually personal files of your visitors: screenshots, plans, photos. The plugin does not offer them for replacement and never sends them to the generation service. If such a file is also placed on a public page, it stays in the list. Developers can adjust which post types count as shown on the site with the imgchanger_indexable_types filter.

Can I use my own image instead of a generated one?

Yes. Every card has an “Upload my own” button: the file goes through exactly the same path — preview next to the original, backup, apply, rollback — and costs nothing. A license key is only needed for generation.

My theme builds its own thumbnails and still shows the old image

Some themes and plugins resize images themselves and cache the result under a name derived from the image URL. The URL does not change when a replacement is applied, so such a cache never learns about it and keeps serving the previous picture.

The plugin clears the cache of every entry where the image is used, which covers the common caching plugins. For a custom thumbnail cache, hook into the replacement:

add_action( 'imgchanger_replaced', function ( $attachment_id, $file, $event, $places ) {
    // Remove your own cached thumbnails for $file here.
    // $event is 'replaced' or 'restored', $places holds the entry IDs.
}, 10, 4 );

How much does it cost?

Replacing with your own images is free and unlimited. For generation, 5 replacements are free once you get a trial key. Further packs, starting from 5 replacements, can be bought right in the plugin settings (“Top up”, card payment through YooKassa) or at imgchanger.org.

Reviews

There are no reviews for this plugin.

Contributors & Developers

“ImgChanger — AI Image Replacement” is open source software. The following people have contributed to this plugin.

Contributors

“ImgChanger — AI Image Replacement” has been translated into 1 locale. Thank you to the translators for their contributions.

Translate “ImgChanger — AI Image Replacement” into your language.

Interested in development?

Browse the code, check out the SVN repository, or subscribe to the development log by RSS.

Changelog

0.1.4

  • The photo is described before generation: the service tells the model what is in the picture — objects, materials, small details — so the replacement keeps the scene even at a strong redraw. The description appears in the prompt field and can be edited before the next attempt. It does not use up a replacement.
  • “Describe” button on the card: read and adjust the description before generating.
  • The prompt can be written in any language: the service translates it into English, which the model understands best, and turns requests like “make the boards lighter” into a description of the result.

0.1.3

  • Redraw strength can be chosen right on each image card, next to the model. The value from the settings is preselected; bulk generation keeps using it.
  • “Generate again” keeps the previous prompt and strength and lets you adjust them before regenerating.

0.1.2

  • The “Service address” field is gone from the settings: there was no reason to change it, and a wrong address would send the license key and site images to a third-party server. Developers can point the plugin to another address with the IMGCHANGER_GATEWAY_URL constant in wp-config.php.
  • Top up the balance from the plugin: pick a pack on the settings page and pay by card through YooKassa. The replacements are added to this license, and after the payment the page updates the balance by itself.
  • The balance is checked with the service when a plugin page is opened, and there is a “Check now” button next to it.
  • The caption under each image links to the page where it is used; “+N” opens the list of all places with links to the site and to the editor. The same in the replacement history.
  • The usage map also covers ACF options pages, theme settings (logo, site icon, header, background), widgets, category and tag fields, page builder data and images inserted by URL. They get their own sections in the filter; replacing such an image clears the whole page cache, because it shows on many pages at once.
  • Files attached to non-public entries — form submissions, requests, orders — are hidden from the list and never sent to the generation service: these are usually visitors’ personal files. The summary shows how many are hidden.
  • Images in site settings are labelled with the settings page and field they come from, for example “Site variables Watermark Image”.

0.1.1

  • After a replacement the plugin clears the cache of the entries where the image is used and fires the imgchanger_replaced action, so a site with its own thumbnail cache can clean it up too.
  • Backups of a deleted attachment are removed with it instead of piling up in uploads.
  • A replacement is converted to the format of the original, so the file, its extension and the record in the database stay in agreement.
  • Replace an image with your own file, not only with a generated one: free, no license key needed, same backup and rollback.
  • A usage map: the plugin finds which entries actually display each image — featured images, ACF fields and galleries, WooCommerce product galleries, gallery shortcodes and editor markup — and lets you filter the library by section. Built once from the plugin page, then kept up to date as you edit entries.
  • Replaced images now reach visitors who already opened the page: a version marker is appended to the image URL, so browsers and CDNs stop serving the cached original. Can be switched off with the imgchanger_bust_cache filter.
  • Search now matches file names, not only titles.
  • The summary shows how many attachments are skipped because of an unsupported MIME type.
  • The “ready to apply” counter updates during bulk runs.

0.1.0

  • First release: media library scanning, replacement generation, apply with a backup and rollback.