⚡ Quick Fix (TL;DR)
The Fix: Don't upload a fresh copy to replace an existing file. Instead, open the existing Media Library item and use Replace Media (built into recent WordPress core versions, or available via a plugin like Enable Media Replace if your version doesn't show it). That swaps the actual file contents while keeping the same filename and URL — no code changes needed anywhere else on the site.
After replacing, clear caches in the usual order (build/optimization plugin cache → page cache plugin → any server or CDN-level cache) and hard-refresh, since a stale cache can still serve the old bytes even after the file itself has correctly been swapped.
You fix an image, upload it again under the exact same filename to swap out the broken version, hard-refresh the page — and the old, broken version is still there. You clear every cache you can find. Still there.
Tagged in :
More from the field
Bisect to an Empty Baseline Before Trusting Any Single Theory
.
Multiple plausible-sounding theories for a bug each turned out to be wrong when actually tested – time was spent building fixes…
A Security Dashboard’s Activity Log Can Lag a Full Day Behind Real Time
.
Trying to check a security tool’s activity log for an event that had just happened showed nothing at all.