BACK TO DIRECTORY

Shift Media Library Cleanup

by shiftinnovation

0.0
(0 ratings)

Media cleaners have one big problem: false positives. An image looks unused, you delete it, and a page breaks. Shift Media Library Cleanup is built around the opposite promise: when in doubt, a file is kept, and nothing is ever deleted before you had the chance to undo it.

Why it is different

  • It tells you why. Every file comes with a “Why?” panel: where it is used (with a link to edit that content), or everywhere it was looked for.
  • Quarantine instead of deletion. Files are moved to a private folder and hidden from the Media Library. Restore them with one click, exactly as they were, for 30 days.
  • It watches for broken images. If a page still requests a quarantined file, the plugin flags it (“requested N times since quarantine”) and shows you which page asked for it.
  • It checks again right before acting. Before anything is moved, the plugin re-checks content edited since the scan and searches the files’ names across your database.
  • Shared files are protected. When several media items point to the same file, none of them can remove it while another one is still in use.

Where it looks for your media

  • Post and page content, excerpts and featured images, for every post type
  • Block editor (core blocks and media attributes of third-party blocks)
  • Classic editor: images, captions, [gallery] and [playlist] shortcodes
  • Elementor: page data, page and site settings (logo, favicon, backgrounds), dynamic tags
  • WPBakery Page Builder and themes built on it: element attributes, background images, design options CSS
  • WooCommerce: product images, product and variation galleries, category images, placeholder and email header images
  • Advanced Custom Fields: image, file and gallery fields, including repeaters, flexible content, ACF blocks, term fields and options pages
  • Custom fields of any plugin, user avatars, category and tag fields
  • Site settings: site icon, logo, header and background images, widgets (image, gallery, text, HTML and block widgets), theme option panels
  • Tables created by other plugins, such as sliders and form builders
  • Your active theme, parent theme and must-use plugins: stylesheets, templates and scripts, including image IDs written in PHP

Drafts, private posts, revisions and trashed posts count as usage too: restoring any of them will never bring back a broken image.

Built to be safe for your site

  • Scans run in the background in small batches, so large libraries do not hit server time limits, and they resume after an interruption.
  • Scanning only reads your content: nothing in your media library changes until you choose to quarantine files.
  • Data stored by other plugins is read without running any of their code.
  • No data leaves your site. No tracking, no external services, no account.

Page builders not supported yet

If the plugin detects a page builder it cannot read yet (for example Divi, Bricks, Oxygen or Beaver Builder), it shows a warning and asks for an extra confirmation before quarantining files. Review those results carefully, and use the quarantine period to check your pages.

Privacy

The plugin does not send any data outside your site and does not use cookies. To detect quarantined files that are still requested, it stores the requested file path, the time and the address of the page that asked for it (without query string). It does not store IP addresses or browser details.

Screenshots

Scan results: media in use, not found in use and in quarantine, with selection for quarantine.

Scan results: media in use, not found in use and in quarantine, with selection for quarantine.

The "Why?" panel explains what was checked for every file.

The "Why?" panel explains what was checked for every file.

Moving files to quarantine, with a clear explanation of what will happen.

Moving files to quarantine, with a clear explanation of what will happen.

The Quarantine tab: restore or delete permanently, one file or many at once.

The Quarantine tab: restore or delete permanently, one file or many at once.

Plugin Details

Active Installs
0
Total Downloads
168
Version
1.0.2
Requires WP
6.9
Requires PHP
8.1
Tested Up To
7.1.4
Added
2026-10-12
Last Updated
2026-10-16 10:04am GMT

Ratings

5
0
4
0
3
0
2
0
1
0