Linux 软件免费装
Banner图

Unattached Media Manager

开发者 sungraizfaryad
更新时间 2026年2月22日 02:10
PHP版本: 7.4 及以上
WordPress版本: 6.9
版权: GPLv2 or later
版权网址: 版权信息

标签

media library attachments cleanup unused media media cleaner

下载

1.0.2 1.0.3 1.0.5

详情介绍:

Why This Plugin Is Different Most media cleaner plugins help you delete unused images. This plugin fixes a fundamental WordPress problem first. WordPress has a built-in "Unattached" filter in the Media Library. The idea is simple: it shows you media files that aren't connected to any post, so you can decide whether to keep or delete them. The problem? WordPress only marks media as "attached" if it was uploaded directly through the post editor. Any image added through ACF fields, Gutenberg blocks, page builders, widgets, theme options, or shortcodes shows as "Unattached" — even though it's actively being used on your site. This makes WordPress's native "Unattached" filter completely unreliable. How Unattached Media Manager Fixes This This plugin scans your entire site, finds every place where media files are actually being used, and properly attaches them to their parent posts. Once attached: The Workflow
  1. Scan — The plugin finds all media usage across your site (content, ACF, blocks, widgets, options, etc.)
  2. Attach — One-click to properly attach all "used but unattached" media to their parent posts
  3. Review — Now WordPress's "Unattached" filter shows only genuinely unused files
  4. Clean Up — Use WordPress's native tools OR this plugin's safe deletion features
  5. Done — Uninstall if you want; the fixes stay with WordPress
Yes, It Also Deletes Unused Media Like other media cleaners, this plugin also helps you safely delete unused media with: But the real value is fixing WordPress's attachment system so you don't need to depend on any plugin long-term. Two Processing Modes Key Features The Problem It Solves WordPress marks media as "Unattached" if it wasn't uploaded directly to a post. But many media files ARE being used — they're just embedded via: Unattached Media Manager finds ALL these references and properly attaches the media, so WordPress correctly reflects which files are actually in use. Server-Friendly Design This plugin is designed to work on ALL servers, including shared hosting with limited resources: Supported Content Types ALL features below are FREE - no Pro version required! For Developers Unattached Media Manager is built with extensibility in mind:

安装:

  1. Upload the unattached-media-manager folder to the /wp-content/plugins/ directory
  2. Activate the plugin through the 'Plugins' menu in WordPress
  3. Go to Media → Media Solution to access the dashboard
  4. Click Start Full Scan to begin indexing your media references
Minimum Requirements Recommended

屏幕截图:

  • **Fix Unattached Media** - Displaying used media files that need to be attached and organized.
  • **Unused Media** - Review all potentially unused media and safely move them to trash.
  • **Change History** - Complete audit trail of all changes made by the plugin, with options to revert.
  • **Settings Page** - Configure server resource usage (Low, Auto, High) and background processing behavior.
  • **References by Context** - Detailed breakdown of exactly where media is being used (Metabox, Post Content, Gutenberg, etc.).
  • **Potentially Unused Media Details** - View specific media files identified as having no references before taking action.
  • **Attachment Settings** - Choose which content areas (Post Content, Featured Images, ACF Fields, Widgets, Theme Options) are actively scanned.

升级注意事项:

1.0.0 Initial release of Unattached Media Manager. Start organizing your media library today!

常见问题:

Will scanning slow down my site?

No. The scanner processes items in small batches and automatically adjusts its resource usage. Visitors to your site won't notice any slowdown.

Can I close my browser during operations?

It depends on your chosen processing mode. With Browser-Driven mode (recommended), you need to keep the tab open. With Background (WP-Cron) mode, operations continue even after closing your browser — though this requires WP-Cron to be working properly on your site.

What if I accidentally delete something?

If you used "Move to Trash" instead of "Delete Permanently", you can restore from the Trash view in the Unused Media tab. This is why we recommend always using Trash first.

What if I attached media incorrectly?

Go to the Change History tab and click Revert on any change. This will detach the media from the post it was attached to.

What happens if the scan gets stuck?

You can pause the scan at any time and resume it later. If something goes wrong, use the Stop button to reset and start fresh.

Does this work with page builders?

Yes. Unattached Media Manager scans all post content, which includes content created by page builders like Elementor, Beaver Builder, Divi, and others. The scanner looks for both image IDs and URLs in the content.

Does this work with ACF?

Yes. There's a dedicated ACF parser that understands image fields, gallery fields, file fields, repeaters, flexible content, and group fields.

Will it detect images added via code/theme?

If images are stored in the database (post meta, options, theme mods), they will be detected. Images hardcoded in PHP theme files are not detected as they're not stored in the database.

Is it safe to delete media marked as "unused"?

Always review before deleting! The scanner indexes database references, but images might be:

  • Hardcoded in theme files
  • Used by external services
  • Linked from other websites
  • Used in custom code We strongly recommend using Trash first and waiting a few days before permanently deleting.

Does this work with Multisite?

Currently, Unattached Media Manager works on individual sites. Network-wide scanning for Multisite is planned for a future release.

My server has very limited resources. Will this work?

Yes! Set the Resource Mode to "Low Resources" in Settings. This uses smaller batches (5 items) with longer intervals (2 minutes) to prevent timeouts on shared hosting.

How do I extend the scanner?

Use the aioms_parsers filter to add custom parsers: add_filter( 'aioms_parsers', function( $parsers ) { $parsers['my_custom'] = new My_Custom_Parser(); return $parsers; } ); Your parser should implement the MUI_Parser_Interface.

更新日志:

1.0.0