{"id":278801,"date":"2026-02-21T17:39:18","date_gmt":"2026-02-21T17:39:18","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/all-in-one-media-solution\/"},"modified":"2026-03-10T16:29:32","modified_gmt":"2026-03-10T16:29:32","slug":"unattached-media-manager","status":"publish","type":"plugin","link":"https:\/\/azb.wordpress.org\/plugins\/unattached-media-manager\/","author":13038248,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_crdt_document":"","version":"1.0.6","stable_tag":"1.0.6","tested":"6.9.4","requires":"5.8","requires_php":"7.4","requires_plugins":null,"header_name":"Unattached Media Manager","header_author":"Sungraiz Faryad","header_description":"Fix WordPress's broken \"Unattached\" media filter. Properly attach media used in ACF, Gutenberg, page builders, widgets & more \u2014 so you can manage your library with WordPress's native tools.","assets_banners_color":"4aae9a","last_updated":"2026-03-10 16:29:32","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/wordpress.org\/plugins\/unattached-media-manager\/","header_author_uri":"","rating":0,"author_block_rating":0,"active_installs":20,"downloads":384,"num_ratings":0,"support_threads":1,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.2":{"tag":"1.0.2","author":"sungraizfaryad","date":"2026-02-21 17:40:29"},"1.0.3":{"tag":"1.0.3","author":"sungraizfaryad","date":"2026-02-21 17:54:08"},"1.0.5":{"tag":"1.0.5","author":"sungraizfaryad","date":"2026-02-21 18:10:39"},"1.0.6":{"tag":"1.0.6","author":"sungraizfaryad","date":"2026-03-10 16:29:32"}},"upgrade_notice":{"1.0.0":"<p>Initial release of Unattached Media Manager. Start organizing your media library today!<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3479261,"resolution":"128x128","location":"assets","locale":""},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3479261,"resolution":"256x256","location":"assets","locale":""}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3479261,"resolution":"1544x500","location":"assets","locale":""},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3479261,"resolution":"772x250","location":"assets","locale":""}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.2","1.0.3","1.0.5","1.0.6"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3479261,"resolution":"1","location":"assets","locale":""},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3479261,"resolution":"2","location":"assets","locale":""},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3479261,"resolution":"3","location":"assets","locale":""},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3479261,"resolution":"4","location":"assets","locale":""},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3479261,"resolution":"5","location":"assets","locale":""},"screenshot-6.png":{"filename":"screenshot-6.png","revision":3479261,"resolution":"6","location":"assets","locale":""},"screenshot-7.png":{"filename":"screenshot-7.png","revision":3479261,"resolution":"7","location":"assets","locale":""},"screenshot-8.png":{"filename":"screenshot-8.png","revision":3479261,"resolution":"8","location":"assets","locale":""}},"screenshots":{"1":"<strong>Dashboard<\/strong> - Overview of media usage statistics (Total Media Files, In Use, Unused, Unattached).","2":"<strong>Fix Unattached Media<\/strong> - Displaying used media files that need to be attached and organized.","3":"<strong>Unused Media<\/strong> - Review all potentially unused media and safely move them to trash.","4":"<strong>Change History<\/strong> - Complete audit trail of all changes made by the plugin, with options to revert.","5":"<strong>Settings Page<\/strong> - Configure server resource usage (Low, Auto, High) and background processing behavior.","6":"<strong>References by Context<\/strong> - Detailed breakdown of exactly where media is being used (Metabox, Post Content, Gutenberg, etc.).","7":"<strong>Potentially Unused Media Details<\/strong> - View specific media files identified as having no references before taking action.","8":"<strong>Attachment Settings<\/strong> - Choose which content areas (Post Content, Featured Images, ACF Fields, Widgets, Theme Options) are actively scanned."},"jetpack_post_was_ever_published":false},"plugin_section":[],"plugin_tags":[1346,3786,227565,233,219749],"plugin_category":[50],"plugin_contributors":[179734],"plugin_business_model":[],"class_list":["post-278801","plugin","type-plugin","status-publish","hentry","plugin_tags-attachments","plugin_tags-cleanup","plugin_tags-media-cleaner","plugin_tags-media-library","plugin_tags-unused-media","plugin_category-media","plugin_contributors-sungraizfaryad","plugin_committers-sungraizfaryad"],"banners":{"banner":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/banner-772x250.png?rev=3479261","banner_2x":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/banner-1544x500.png?rev=3479261","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/icon-128x128.png?rev=3479261","icon_2x":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/icon-256x256.png?rev=3479261","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-1.png?rev=3479261","caption":"<strong>Dashboard<\/strong> - Overview of media usage statistics (Total Media Files, In Use, Unused, Unattached)."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-2.png?rev=3479261","caption":"<strong>Fix Unattached Media<\/strong> - Displaying used media files that need to be attached and organized."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-3.png?rev=3479261","caption":"<strong>Unused Media<\/strong> - Review all potentially unused media and safely move them to trash."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-4.png?rev=3479261","caption":"<strong>Change History<\/strong> - Complete audit trail of all changes made by the plugin, with options to revert."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-5.png?rev=3479261","caption":"<strong>Settings Page<\/strong> - Configure server resource usage (Low, Auto, High) and background processing behavior."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-6.png?rev=3479261","caption":"<strong>References by Context<\/strong> - Detailed breakdown of exactly where media is being used (Metabox, Post Content, Gutenberg, etc.)."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-7.png?rev=3479261","caption":"<strong>Potentially Unused Media Details<\/strong> - View specific media files identified as having no references before taking action."},{"src":"https:\/\/ps.w.org\/unattached-media-manager\/assets\/screenshot-8.png?rev=3479261","caption":"<strong>Attachment Settings<\/strong> - Choose which content areas (Post Content, Featured Images, ACF Fields, Widgets, Theme Options) are actively scanned."}],"raw_content":"<!--section=description-->\n<h4>Why This Plugin Is Different<\/h4>\n\n<p><strong>Most media cleaner plugins help you delete unused images. This plugin fixes a fundamental WordPress problem first.<\/strong><\/p>\n\n<p>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.<\/p>\n\n<p><strong>The problem?<\/strong> 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\" \u2014 even though it's actively being used on your site.<\/p>\n\n<p><strong>This makes WordPress's native \"Unattached\" filter completely unreliable.<\/strong><\/p>\n\n<h4>How Unattached Media Manager Fixes This<\/h4>\n\n<p>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:<\/p>\n\n<ul>\n<li><strong>WordPress's \"Unattached\" filter actually works<\/strong> \u2014 It now shows only truly unused media<\/li>\n<li><strong>You can use WordPress's native tools<\/strong> \u2014 No need to depend on third-party plugins to manage media<\/li>\n<li><strong>Import\/export plugins work correctly<\/strong> \u2014 Tools like WP All Import, WP Migrate, Duplicator, and others can now properly identify and migrate media with their associated posts<\/li>\n<li><strong>You can safely uninstall this plugin<\/strong> \u2014 The attachments remain as part of WordPress's native structure<\/li>\n<\/ul>\n\n<h4>The Workflow<\/h4>\n\n<ol>\n<li><strong>Scan<\/strong> \u2014 The plugin finds all media usage across your site (content, ACF, blocks, widgets, options, etc.)<\/li>\n<li><strong>Attach<\/strong> \u2014 One-click to properly attach all \"used but unattached\" media to their parent posts<\/li>\n<li><strong>Review<\/strong> \u2014 Now WordPress's \"Unattached\" filter shows only genuinely unused files<\/li>\n<li><strong>Clean Up<\/strong> \u2014 Use WordPress's native tools OR this plugin's safe deletion features<\/li>\n<li><strong>Done<\/strong> \u2014 Uninstall if you want; the fixes stay with WordPress<\/li>\n<\/ol>\n\n<h4>Yes, It Also Deletes Unused Media<\/h4>\n\n<p>Like other media cleaners, this plugin also helps you safely delete unused media with:<\/p>\n\n<ul>\n<li><strong>Trash support<\/strong> \u2014 Move to trash first, restore if needed<\/li>\n<li><strong>Permanent delete<\/strong> \u2014 Remove forever when you're sure<\/li>\n<li><strong>Change history<\/strong> \u2014 Track all attachment changes with one-click revert<\/li>\n<\/ul>\n\n<p>But the real value is <strong>fixing WordPress's attachment system<\/strong> so you don't need to depend on any plugin long-term.<\/p>\n\n<h4>Two Processing Modes<\/h4>\n\n<ul>\n<li><strong>Browser-Driven (Recommended)<\/strong> \u2014 Fast and reliable with real-time progress. Keep the browser tab open until complete.<\/li>\n<li><strong>Background (WP-Cron)<\/strong> \u2014 Processing continues even after closing your browser. Ideal for server cron setups.<\/li>\n<\/ul>\n\n<h4>Key Features<\/h4>\n\n<ul>\n<li><strong>Comprehensive Scanning<\/strong> \u2014 Detects media usage in post content, featured images, Gutenberg blocks, ACF fields, Elementor, Meta Box, WooCommerce, SEO plugins, widgets, theme options, and more<\/li>\n<li><strong>Fix Unattached Media<\/strong> \u2014 One-click to properly attach all \"used but unattached\" media<\/li>\n<li><strong>Media Library Integration<\/strong> \u2014 See usage count directly in your Media Library list view<\/li>\n<li><strong>Safe Deletion<\/strong> \u2014 WordPress trash support with restore capability<\/li>\n<li><strong>Change History<\/strong> \u2014 Full audit trail with one-click revert for any attachment<\/li>\n<li><strong>Pause &amp; Resume<\/strong> \u2014 Stop any operation and continue later<\/li>\n<li><strong>Resource Aware<\/strong> \u2014 Three modes (Low\/Auto\/High) for shared hosting to dedicated servers<\/li>\n<li><strong>Export Reports<\/strong> \u2014 Download CSV reports of all media usage<\/li>\n<li><strong>Developer Friendly<\/strong> \u2014 Hooks, filters, REST API, and WP-CLI commands<\/li>\n<\/ul>\n\n<h4>The Problem It Solves<\/h4>\n\n<p>WordPress marks media as \"Unattached\" if it wasn't uploaded directly to a post. But many media files ARE being used \u2014 they're just embedded via:<\/p>\n\n<ul>\n<li>The block editor (Gutenberg)<\/li>\n<li>Page builders like Elementor or Beaver Builder<\/li>\n<li>ACF image\/gallery fields<\/li>\n<li>WooCommerce product galleries<\/li>\n<li>Theme customizer settings<\/li>\n<li>Widget areas<\/li>\n<li>Shortcodes<\/li>\n<li>Custom meta boxes<\/li>\n<\/ul>\n\n<p><strong>Unattached Media Manager finds ALL these references and properly attaches the media<\/strong>, so WordPress correctly reflects which files are actually in use.<\/p>\n\n<h4>Server-Friendly Design<\/h4>\n\n<p><strong>This plugin is designed to work on ALL servers, including shared hosting with limited resources:<\/strong><\/p>\n\n<ul>\n<li><strong>Never blocks your site<\/strong> - All heavy operations are processed in batches<\/li>\n<li><strong>Adaptive resource usage<\/strong> - Automatically detects server limits and adjusts accordingly<\/li>\n<li><strong>Three resource modes:<\/strong>\n\n<ul>\n<li><strong>Low Resources<\/strong> - 5 items\/batch, 2-minute intervals (for shared hosting)<\/li>\n<li><strong>Auto (Recommended)<\/strong> - 15 items\/batch, 1-minute intervals (adjusts automatically)<\/li>\n<li><strong>High Performance<\/strong> - 50 items\/batch, 30-second intervals (for dedicated servers)<\/li>\n<\/ul><\/li>\n<li><strong>Two processing strategies<\/strong> - Choose browser-driven (fast) or background WP-Cron mode<\/li>\n<\/ul>\n\n<h4>Supported Content Types<\/h4>\n\n<p><strong>ALL features below are FREE - no Pro version required!<\/strong><\/p>\n\n<ul>\n<li><strong>Post Content<\/strong> - Classic editor, Gutenberg blocks, shortcodes, inline styles, data attributes<\/li>\n<li><strong>Featured Images<\/strong> - Thumbnail assignments<\/li>\n<li><strong>ACF Fields<\/strong> - Image, gallery, file, repeater, flexible content, and group fields<\/li>\n<li><strong>Gutenberg Blocks<\/strong> - Core image, gallery, cover, media &amp; text blocks<\/li>\n<li><strong>Elementor<\/strong> - All widgets, backgrounds, galleries, sliders, and responsive images<\/li>\n<li><strong>Meta Box<\/strong> - All field types including groups and cloneable fields<\/li>\n<li><strong>WooCommerce<\/strong> - Product galleries, variation images, downloadable files, category thumbnails<\/li>\n<li><strong>SEO Plugins<\/strong> - Yoast SEO, Rank Math, All in One SEO, SEOPress (OpenGraph &amp; Twitter images)<\/li>\n<li><strong>Widgets<\/strong> - Image widgets, text widgets with media, custom HTML<\/li>\n<li><strong>Theme Options<\/strong> - Customizer settings, theme mods, custom logos<\/li>\n<li><strong>Options Table<\/strong> - Plugin settings that store media IDs or URLs<\/li>\n<li><strong>Video &amp; Audio<\/strong> - HTML5 video\/audio elements, poster images, source tags<\/li>\n<li><strong>Responsive Images<\/strong> - srcset attributes and lazy-loading data attributes<\/li>\n<\/ul>\n\n<h4>For Developers<\/h4>\n\n<p>Unattached Media Manager is built with extensibility in mind:<\/p>\n\n<ul>\n<li><strong>Hooks &amp; Filters<\/strong> - Extend scanning with custom parsers<\/li>\n<li><strong>REST API<\/strong> - Query media usage programmatically<\/li>\n<li><strong>WP-CLI Commands<\/strong> - Run scans from the command line (<code>wp aioms scan<\/code>)<\/li>\n<li><strong>Custom Post Types<\/strong> - Automatically scans all public post types<\/li>\n<\/ul>\n\n<h3>How to Use<\/h3>\n\n<h4>Step 1: Run Your First Scan<\/h4>\n\n<ol>\n<li>Navigate to <strong>Media \u2192 Media Solution<\/strong><\/li>\n<li>Click <strong>Start Full Scan<\/strong><\/li>\n<li>Choose your processing mode (Browser-Driven recommended for most users)<\/li>\n<li>Watch the real-time progress as your media library is scanned<\/li>\n<\/ol>\n\n<h4>Step 2: Review the Dashboard<\/h4>\n\n<p>After scanning, you'll see:<\/p>\n\n<ul>\n<li><strong>Total Media Files<\/strong> - All attachments in your library<\/li>\n<li><strong>In Use<\/strong> - Media files with detected references<\/li>\n<li><strong>Potentially Unused<\/strong> - Media files with no detected references<\/li>\n<li><strong>Used but Unattached<\/strong> - Media that's used but marked as \"Unattached\" in WordPress<\/li>\n<li><strong>Total References<\/strong> - Total number of places media is referenced<\/li>\n<\/ul>\n\n<h4>Step 3: Fix Unattached Media<\/h4>\n\n<p>If you have \"Used but Unattached\" media:<\/p>\n\n<ol>\n<li>Click the <strong>Attach All Media Files<\/strong> button<\/li>\n<li>The operation runs in the background<\/li>\n<li>Each attachment is tracked in Change History for easy reverting<\/li>\n<\/ol>\n\n<h4>Step 4: Clean Up Unused Media<\/h4>\n\n<p>Go to the <strong>Unused Media<\/strong> tab to:<\/p>\n\n<ol>\n<li><strong>Review<\/strong> - Check each file before taking action<\/li>\n<li><strong>Move to Trash<\/strong> - Safely move to WordPress trash (can be restored)<\/li>\n<li><strong>Restore<\/strong> - Bring items back from trash if needed<\/li>\n<li><strong>Delete Permanently<\/strong> - Remove forever (cannot be undone)<\/li>\n<li><strong>Empty Trash<\/strong> - Delete all trashed media at once<\/li>\n<\/ol>\n\n<p><strong>Important:<\/strong> All bulk operations run in the background. You'll see a status bar showing progress.<\/p>\n\n<h4>Step 5: Review Change History<\/h4>\n\n<p>The <strong>Change History<\/strong> tab shows:<\/p>\n\n<ul>\n<li>All attachments made by this plugin<\/li>\n<li>When each change occurred<\/li>\n<li>What post each media was attached to<\/li>\n<li>Option to <strong>Revert<\/strong> any change (detaches the media)<\/li>\n<\/ul>\n\n<h3>Important Precautions<\/h3>\n\n<h4>Before Deleting Any Media<\/h4>\n\n<ol>\n<li><strong>Always run a full scan first<\/strong> - Make sure the index is up to date<\/li>\n<li><strong>Review files manually<\/strong> - The scanner detects database references, but images might be:\n\n<ul>\n<li>Hardcoded in theme PHP files<\/li>\n<li>Used by external websites linking to your images<\/li>\n<li>Referenced in custom code or third-party plugins not yet supported<\/li>\n<li>Used in email templates stored outside WordPress<\/li>\n<\/ul><\/li>\n<li><strong>Use Trash first<\/strong> - Move to trash instead of deleting permanently<\/li>\n<li><strong>Wait before emptying trash<\/strong> - Keep trashed items for a few days to catch any issues<\/li>\n<\/ol>\n\n<h4>About \"Potentially Unused\" Media<\/h4>\n\n<p>Files marked as \"Potentially Unused\" means:<\/p>\n\n<ul>\n<li>No references were found in the scanned content<\/li>\n<li><strong>This doesn't guarantee the file is unused<\/strong><\/li>\n<li>The file might be used in ways not detected:\n\n<ul>\n<li>Theme template files (hardcoded)<\/li>\n<li>External sites linking to your images<\/li>\n<li>Custom plugins with non-standard storage<\/li>\n<li>CSS background images defined in stylesheets<\/li>\n<li>JavaScript-loaded images<\/li>\n<\/ul><\/li>\n<\/ul>\n\n<h4>Recommended Workflow<\/h4>\n\n<ol>\n<li><strong>Scan<\/strong> - Run a full scan with all content types enabled<\/li>\n<li><strong>Review<\/strong> - Look at the Unused Media tab<\/li>\n<li><strong>Research<\/strong> - For each file, consider where it might be used<\/li>\n<li><strong>Trash<\/strong> - Move questionable items to trash (not permanent delete)<\/li>\n<li><strong>Monitor<\/strong> - Check your site for a few days for missing images<\/li>\n<li><strong>Delete<\/strong> - Only permanently delete after confirming no issues<\/li>\n<\/ol>\n\n<h4>Server Resources<\/h4>\n\n<ul>\n<li><strong>Shared Hosting<\/strong> - Use \"Low Resources\" mode in settings<\/li>\n<li><strong>If operations timeout<\/strong> - Switch to Low Resources mode<\/li>\n<li><strong>Large media libraries<\/strong> - The scan may take longer but will complete<\/li>\n<li><strong>WP Cron must work<\/strong> - Ensure WordPress cron is running (check with your host)<\/li>\n<\/ul>\n\n<h3>Privacy Policy<\/h3>\n\n<p>Unattached Media Manager does not:<\/p>\n\n<ul>\n<li>Collect any personal data<\/li>\n<li>Send any data to external servers<\/li>\n<li>Use any third-party services<\/li>\n<li>Track users or usage<\/li>\n<\/ul>\n\n<p>All data is stored locally in your WordPress database in custom tables that are removed when you uninstall the plugin.<\/p>\n\n<h3>Uninstallation<\/h3>\n\n<p>When you uninstall (delete) the plugin:<\/p>\n\n<ul>\n<li>All custom database tables are removed<\/li>\n<li>All plugin options are deleted<\/li>\n<li>All plugin transients are cleared<\/li>\n<li>All scheduled cron events are removed<\/li>\n<li>Post meta created by the plugin is deleted<\/li>\n<\/ul>\n\n<p><strong>Note:<\/strong> Attachment relationships (post_parent) that were set by this plugin are NOT removed, as these are now part of WordPress's native media library structure. If you need to revert these, use the Change History tab before uninstalling.<\/p>\n\n<h3>Credits<\/h3>\n\n<ul>\n<li>Built with love for the WordPress community<\/li>\n<li>Icons from WordPress Dashicons<\/li>\n<li>Inspired by the need to keep media libraries clean and organized<\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>unattached-media-manager<\/code> folder to the <code>\/wp-content\/plugins\/<\/code> directory<\/li>\n<li>Activate the plugin through the 'Plugins' menu in WordPress<\/li>\n<li>Go to <strong>Media \u2192 Media Solution<\/strong> to access the dashboard<\/li>\n<li>Click <strong>Start Full Scan<\/strong> to begin indexing your media references<\/li>\n<\/ol>\n\n<h4>Minimum Requirements<\/h4>\n\n<ul>\n<li>WordPress 5.8 or higher<\/li>\n<li>PHP 7.4 or higher<\/li>\n<li>MySQL 5.6 or higher<\/li>\n<\/ul>\n\n<h4>Recommended<\/h4>\n\n<ul>\n<li>PHP memory_limit of 256M or higher<\/li>\n<li>max_execution_time of 60 seconds or higher<\/li>\n<\/ul>\n\n<!--section=faq-->\n<dl>\n<dt id=\"will%20scanning%20slow%20down%20my%20site%3F\"><h3>Will scanning slow down my site?<\/h3><\/dt>\n<dd><p>No. The scanner processes items in small batches and automatically adjusts its resource usage. Visitors to your site won't notice any slowdown.<\/p><\/dd>\n<dt id=\"can%20i%20close%20my%20browser%20during%20operations%3F\"><h3>Can I close my browser during operations?<\/h3><\/dt>\n<dd><p>It depends on your chosen processing mode. With <strong>Browser-Driven mode<\/strong> (recommended), you need to keep the tab open. With <strong>Background (WP-Cron) mode<\/strong>, operations continue even after closing your browser \u2014 though this requires WP-Cron to be working properly on your site.<\/p><\/dd>\n<dt id=\"what%20if%20i%20accidentally%20delete%20something%3F\"><h3>What if I accidentally delete something?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"what%20if%20i%20attached%20media%20incorrectly%3F\"><h3>What if I attached media incorrectly?<\/h3><\/dt>\n<dd><p>Go to the <strong>Change History<\/strong> tab and click <strong>Revert<\/strong> on any change. This will detach the media from the post it was attached to.<\/p><\/dd>\n<dt id=\"what%20happens%20if%20the%20scan%20gets%20stuck%3F\"><h3>What happens if the scan gets stuck?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20page%20builders%3F\"><h3>Does this work with page builders?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20acf%3F\"><h3>Does this work with ACF?<\/h3><\/dt>\n<dd><p>Yes. There's a dedicated ACF parser that understands image fields, gallery fields, file fields, repeaters, flexible content, and group fields.<\/p><\/dd>\n<dt id=\"will%20it%20detect%20images%20added%20via%20code%2Ftheme%3F\"><h3>Will it detect images added via code\/theme?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"is%20it%20safe%20to%20delete%20media%20marked%20as%20%22unused%22%3F\"><h3>Is it safe to delete media marked as \"unused\"?<\/h3><\/dt>\n<dd><p><strong>Always review before deleting!<\/strong> The scanner indexes database references, but images might be:\n- Hardcoded in theme files\n- Used by external services\n- Linked from other websites\n- Used in custom code<\/p>\n\n<p>We strongly recommend using Trash first and waiting a few days before permanently deleting.<\/p><\/dd>\n<dt id=\"does%20this%20work%20with%20multisite%3F\"><h3>Does this work with Multisite?<\/h3><\/dt>\n<dd><p>Currently, Unattached Media Manager works on individual sites. Network-wide scanning for Multisite is planned for a future release.<\/p><\/dd>\n<dt id=\"my%20server%20has%20very%20limited%20resources.%20will%20this%20work%3F\"><h3>My server has very limited resources. Will this work?<\/h3><\/dt>\n<dd><p>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.<\/p><\/dd>\n<dt id=\"how%20do%20i%20extend%20the%20scanner%3F\"><h3>How do I extend the scanner?<\/h3><\/dt>\n<dd><p>Use the <code>aioms_parsers<\/code> filter to add custom parsers:<\/p>\n\n<pre><code>add_filter( 'aioms_parsers', function( $parsers ) {\n    $parsers['my_custom'] = new My_Custom_Parser();\n    return $parsers;\n} );\n<\/code><\/pre>\n\n<p>Your parser should implement the <code>MUI_Parser_Interface<\/code>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<li><strong>Scanning Features:<\/strong>\n\n<ul>\n<li>Comprehensive media scanning across posts, ACF, blocks, widgets, and options<\/li>\n<li>Dual processing modes: Browser-Driven (fast) or Background (WP-Cron)<\/li>\n<li>Pause and resume functionality<\/li>\n<li>Adaptive resource management (Low\/Auto\/High modes)<\/li>\n<\/ul><\/li>\n<li><strong>Media Management:<\/strong>\n\n<ul>\n<li>One-click fix for unattached media<\/li>\n<li>Trash\/restore functionality for safe deletion<\/li>\n<li>Permanent delete option for confirmed unused media<\/li>\n<li>Bulk operations for trash, restore, and delete<\/li>\n<li>Empty trash function<\/li>\n<\/ul><\/li>\n<li><strong>Tracking &amp; Safety:<\/strong>\n\n<ul>\n<li>Full change history with audit trail<\/li>\n<li>One-click revert for any attachment change<\/li>\n<li>Background job queue for all bulk operations<\/li>\n<li>Universal stop button for any operation<\/li>\n<\/ul><\/li>\n<li><strong>Developer Tools:<\/strong>\n\n<ul>\n<li>REST API endpoints<\/li>\n<li>WP-CLI commands (<code>wp aioms<\/code>)<\/li>\n<li>Extensible parser system<\/li>\n<\/ul><\/li>\n<li><strong>UI\/UX:<\/strong>\n\n<ul>\n<li>Media Library integration with usage counts<\/li>\n<li>CSV export functionality<\/li>\n<li>Real-time progress updates<\/li>\n<li>Sticky status bar for background operations<\/li>\n<\/ul><\/li>\n<\/ul>","raw_excerpt":"Fix the WordPress Unattached media filter. Automatically attach used media files to their posts so you can safely clean up your library.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/278801","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=278801"}],"author":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/sungraizfaryad"}],"wp:attachment":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=278801"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=278801"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=278801"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=278801"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=278801"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=278801"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}