[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fFfzBl9OZz17uvdsFeIA5lr6Ei7DdELG4R7cgaQoE0QY":3,"$ffyhJMn3GsJI2_Qe_3kkli6QQvUKw3aQvFXQuFEAR2UE":138,"$fo5z17FKETsj5MzAyJOFyNXy00_Hxv6wQbjgB9NkaGRM":143},{"slug":4,"name":5,"version":6,"author":7,"author_profile":8,"description":9,"short_description":10,"active_installs":11,"downloaded":12,"rating":11,"num_ratings":11,"last_updated":13,"tested_up_to":14,"requires_at_least":15,"requires_php":16,"tags":17,"homepage":23,"download_link":24,"security_score":12,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26,"discovery_status":27,"vulnerabilities":28,"developer":29,"crawl_stats":25,"alternatives":34,"analysis":25,"fingerprints":25},"s404-orphaned-attachment-scanner","s404 Orphaned Attachment Scanner","1.1.4","surviving404","https:\u002F\u002Fprofiles.wordpress.org\u002Fsurviving404\u002F","\u003Cp>\u003Cstrong>s404 Orphaned Attachment Scanner\u003C\u002Fstrong> helps you find and remove media files that are sitting in your WordPress Media Library but are not used anywhere in your installation — not in posts, pages, widgets, theme customizer, ACF fields, WooCommerce products, page-builder data, or any active plugin’s settings.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Batched AJAX scan\u003C\u002Fstrong> — never times out on large libraries\u003C\u002Fli>\n\u003Cli>\u003Cstrong>9 detection layers\u003C\u002Fstrong> — post content, post meta, featured images, widgets, theme customizer, ACF, WooCommerce, page builders (Elementor, Beaver Builder, Divi, Bricks…), ALL active plugin wp_options\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Filesystem scan\u003C\u002Fstrong> — checks theme files and optionally the entire WP installation for hard-coded references\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Format filtering\u003C\u002Fstrong> — scan only images, video, audio, documents, or specific formats (JPEG, PNG, WebP, SVG…)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Age threshold\u003C\u002Fstrong> — only flag files older than N days, protecting freshly uploaded assets\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Trash & Permanent Delete\u003C\u002Fstrong> — move items to Trash for safety (requires \u003Ccode>define('MEDIA_TRASH', true);\u003C\u002Fcode> in your \u003Ccode>wp-config.php\u003C\u002Fcode> to enable the media bin)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Deletion log\u003C\u002Fstrong> — every action is recorded with timestamp and username in your local history\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Bulk actions\u003C\u002Fstrong> — select, trash, delete, exclude, or export to CSV\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Exclusion list\u003C\u002Fstrong> — permanently hide specific IDs, MIME types, or path patterns from scan results\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Scheduled scans\u003C\u002Fstrong> — WP-Cron with daily\u002Fweekly\u002Fmonthly frequency and optional email report\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer hooks\u003C\u002Fstrong> — \u003Ccode>s404as_is_attachment_used\u003C\u002Fcode> filter, \u003Ccode>s404as_before_delete\u003C\u002Fcode> \u002F \u003Ccode>s404as_after_delete\u003C\u002Fcode> actions\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Usage\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Go to \u003Cstrong>Tools \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> S404OrphanedAttachmentScanner\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Optionally select format filters\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Start Scan\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Review results — preview thumbnails, file sizes, MIME types\u003C\u002Fli>\n\u003Cli>Select items and use bulk actions, or use per-row buttons\u003C\u002Fli>\n\u003Cli>Export a CSV for your records before deleting\u003C\u002Fli>\n\u003C\u002Fol>\n","Scan your WordPress Media Library for orphaned attachments and safely delete them to reclaim disk space.",0,100,"2026-06-19T09:24:00.000Z","7.1","6.3","8.2",[18,19,20,21,22],"attachment","cleaner","images","media","orphaned","","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fs404-orphaned-attachment-scanner.1.1.4.zip",null,"2026-07-22T17:31:50.256Z","no_bundle",[],{"slug":7,"display_name":7,"profile_url":8,"plugin_count":30,"total_installs":31,"avg_security_score":12,"avg_patch_time_days":31,"trust_score":32,"computed_at":33},3,30,94,"2026-08-29T09:45:00.189Z",[35,62,83,102,119],{"slug":36,"name":37,"version":38,"author":39,"author_profile":40,"description":41,"short_description":42,"active_installs":43,"downloaded":44,"rating":45,"num_ratings":46,"last_updated":47,"tested_up_to":48,"requires_at_least":49,"requires_php":50,"tags":51,"homepage":57,"download_link":58,"security_score":59,"vuln_count":60,"unpatched_count":11,"last_vuln_date":61,"fetched_at":26},"image-sizes","ThumbPress – Compress Images, Manage Thumbnails, Detect Image Issues, WebP\u002FAVIF, Lazy Loading, Hotlinking & More","6.4.1","Codexpert, Inc","https:\u002F\u002Fprofiles.wordpress.org\u002Fcodexpert\u002F","\u003Cp>🚀 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\" rel=\"nofollow ugc\">Pro Version\u003C\u002Fa> | 🔵 \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fcodexpert.io\u002F\" rel=\"nofollow ugc\">Facebook\u003C\u002Fa> | 🐦 \u003Ca href=\"https:\u002F\u002Fx.com\u002Fcodexpertio\" rel=\"nofollow ugc\">X\u003C\u002Fa> | 👥 \u003Ca href=\"https:\u002F\u002Fwww.linkedin.com\u002Fcompany\u002Fcodexpertio\u002F\" rel=\"nofollow ugc\">LinkedIn\u003C\u002Fa>\u003C\u002Fp>\n\u003Cp>WordPress image management is a mess. And most site owners don’t even know it.\u003C\u002Fp>\n\u003Cp>Here’s what’s quietly happening on your site right now:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Each upload creates 7+ thumbnails. Themes and plugins add more. Most stay unused and waste storage.\u003C\u002Fli>\n\u003Cli>Many images are still JPG or PNG. They’re heavier, slow down pages, and hurt Core Web Vitals and rankings.\u003C\u002Fli>\n\u003Cli>Unused, duplicate, and oversized images keep piling up. Updating them across pages takes extra time.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>None of this is dramatic. It’s just the slow, invisible damage that builds up on every WordPress site without a proper image management system.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>ThumbPress fixes it all with a single plugin.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>ThumbPress is a complete WordPress image optimization and media management plugin built for site owners, developers, and agencies who want full control over their media library. Compress images, convert to WebP or AVIF, regenerate thumbnails, find duplicate images, detect unused files, and much more — all from your WordPress dashboard.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Version 6.0 is here\u003C\u002Fstrong> – with a redesigned interface, AVIF image conversion, and duplicate image detection.\u003C\u002Fp>\n\u003Cp>👉 \u003Cstrong>All ThumbPress Features\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Free Modules\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdisable-thumbnails\" rel=\"nofollow ugc\">Disable Thumbnails\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fregenerate-thumbnails\" rel=\"nofollow ugc\">Regenerate Thumbnails\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fimage-upload-limit\" rel=\"nofollow ugc\">Set Image Upload Limit\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fconvert-images-to-webp\" rel=\"nofollow ugc\">Convert Images to WebP\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fconvert-images-to-avif\" rel=\"nofollow ugc\">Convert Images to AVIF\u003C\u002Fa> \u003Cem>(Bulk conversion is Pro)\u003C\u002Fem>\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fset-social-media-thumbnails\" rel=\"nofollow ugc\">Set Social Media Thumbnails\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>💥 Lazy Load Images\u003C\u002Fli>\n\u003Cli>💥 Hotlink Protection\u003C\u002Fli>\n\u003Cli>💥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdisable-right-click\" rel=\"nofollow ugc\">Disable Right Click on Images\u003C\u002Fa>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Pro Modules\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-unused-images\" rel=\"nofollow ugc\">Find Unused Images\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-large-images\" rel=\"nofollow ugc\">Detect Large Images\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fcompress-images\" rel=\"nofollow ugc\">Compress Images\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Freplace-image-with-new-version\" rel=\"nofollow ugc\">Replace Image with New Version\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fimage-editor\" rel=\"nofollow ugc\">Image Editor\u003C\u002Fa>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fdetect-duplicate-images\" rel=\"nofollow ugc\">Detect Duplicate Images\u003C\u002Fa> \u003Cem>(New in 6.0)\u003C\u002Fem>\u003C\u002Fli>\n\u003Cli>🔥 \u003Ca href=\"https:\u002F\u002Fthumbpress.co\u002Fmodules\u002Fconvert-images-to-avif\" rel=\"nofollow ugc\">Bulk AVIF Conversion\u003C\u002Fa> \u003Cem>(New in 6.0)\u003C\u002Fem>\u003C\u002Fli>\n\u003Cli>🔥 Trash Images \u003Cem>(Not a module, but lets you recover deleted images)\u003C\u002Fem>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>🚀 \u003Cstrong>Free Features – In Detail\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Disable Thumbnails – Stop Wasting Server Storage\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Every image upload triggers WordPress to create multiple resized copies – Thumbnail, Medium, Medium-Large, Large, Scaled — plus whatever your theme and plugins add on top. Most of these copies are never used anywhere on your site.\u003C\u002Fp>\n\u003Cp>The Disable Thumbnails module lets you choose exactly which image sizes to block. Stop the copies before they’re created, save server storage from day one, and keep your WordPress media library clean and manageable.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Regenerate Thumbnails – Fix Broken Image Sizes Instantly\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Switched themes? Changed your image size settings? Installed a new page builder? Your existing images now have the wrong dimensions – and broken layouts are the result.\u003C\u002Fp>\n\u003Cp>The Regenerate Thumbnails module rebuilds all your image sizes on demand. Select specific sizes or regenerate everything at once. No manual work, no missing thumbnails. Your site stays consistent without touching a single image file.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Convert Images to WebP – Boost Site Speed and SEO Rankings\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>WebP images are 25–35% smaller than JPG and PNG without any visible quality loss. Google recommends WebP. Core Web Vitals reward it. Page speed tools flag JPG and PNG as a performance issue.\u003C\u002Fp>\n\u003Cp>ThumbPress converts your existing WordPress images to WebP in bulk or one by one, right from your dashboard. No FTP, no separate tools. Just faster images and better SEO rankings.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Convert Images to AVIF – Next-Generation Image Format\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>AVIF is the successor to WebP. It compresses images even further while preserving quality, and browser support is now mainstream across Chrome, Firefox, and Safari.\u003C\u002Fp>\n\u003Cp>ThumbPress lets you convert individual images to AVIF for free. Need to convert your entire media library at once? That’s a Pro feature available in the new 6.0 release.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Upload Limit – Protect Site Performance at the Source\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>One oversized image upload can slow down a page significantly. Without limits, editors and contributors regularly upload images straight from their phones or cameras – files that are 5MB, 10MB, sometimes larger.\u003C\u002Fp>\n\u003Cp>Set a maximum file size and resolution for every image upload. Any file that exceeds your rules gets blocked before it ever hits the server. Clean media library, faster site – automatically enforced.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Social Media Thumbnails – Look Intentional Everywhere You’re Shared\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>When you share a page on Facebook, Twitter, or LinkedIn, each platform crops the image differently. Without customization, your carefully chosen image ends up poorly framed or cut off entirely.\u003C\u002Fp>\n\u003Cp>ThumbPress lets you set distinct thumbnails for each social media platform. Upload one version for Facebook, another for Twitter, another for LinkedIn. Your content always looks deliberate when shared.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Lazy Load Images – Faster Pages Without Changing a Single Image\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>By default, WordPress loads every image on a page at once – including images that are way below the fold and won’t be seen until the user scrolls down. That’s wasted bandwidth, slower initial load times, and a worse experience for users on mobile or slower connections.\u003C\u002Fp>\n\u003Cp>Lazy loading changes this. Images only load as users scroll toward them. The result is a noticeably faster page on first load, lower bandwidth usage, and a real improvement in Core Web Vitals scores – all without touching your images or content.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Hotlink Protection – Stop Other Sites From Stealing Your Bandwidth\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Hotlinking happens when another website embeds your images directly using your image URLs. Your server serves the image, your bandwidth takes the hit – and you get nothing in return.\u003C\u002Fp>\n\u003Cp>ThumbPress blocks external sites from loading images directly from your server. Your images stay on your site, your bandwidth stays yours, and your hosting costs don’t quietly inflate because someone else decided to use your media library as their CDN.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Disable Right Click – Protect Your Images from Theft\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Right-click protection disables the ability to save, copy, or drag images directly from your site. It’s a practical barrier that stops casual image theft – especially useful for photographers, portfolio sites, and ecommerce stores.\u003C\u002Fp>\n\u003Cp>Enable it globally or for specific pages. No code needed.\u003C\u002Fp>\n\u003Cp>🔥 \u003Cstrong>Pro Features — In Detail\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Find and Delete Unused Images — Reclaim Your Server Space\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>As websites evolve, images get left behind. Old blog post headers, replaced product photos, outdated banners — they all stay in your media library indefinitely, taking up space and adding noise.\u003C\u002Fp>\n\u003Cp>The Find Unused Images module scans your entire site and surfaces every image that isn’t linked to any post, page, or content. Review the list, then delete in bulk. Reclaim storage and clean up years of media clutter in minutes.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Detect Large Images — Find What’s Slowing Your Site Down\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Large images are one of the top causes of slow WordPress page load times. And slow pages hurt conversions and search rankings alike.\u003C\u002Fp>\n\u003Cp>ThumbPress scans your media library for oversized images and flags them for action. Then compress them directly from the dashboard — no image editing software, no re-uploading. A faster WordPress site without sacrificing visual quality.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Compression — Smaller Files, Same Visual Quality\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>ThumbPress includes a built-in WordPress image compression tool that reduces file size while keeping your images sharp. Compress in bulk across your entire media library or optimize new uploads automatically.\u003C\u002Fp>\n\u003Cp>Smaller images mean faster pages, better Core Web Vitals scores, and stronger SEO — across your entire site.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Replace Image with New Version — Update Without Breaking Links\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Need to update a product image, fix a low-quality photo, or refresh a visual after a rebrand? Normally, replacing an image in WordPress means deleting the old file and updating every page where it appears manually.\u003C\u002Fp>\n\u003Cp>ThumbPress lets you replace an image with a newer version while keeping the same URL. Every page, post, or widget that uses that image updates automatically. No broken links. No manual edits.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Detect Duplicate Images — New in 6.0 🆕\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Duplicate images waste storage and create confusion in your media library. The same file uploaded twice, variations of the same photo, slightly different crops of one original — they all add up over time.\u003C\u002Fp>\n\u003Cp>The new Duplicate Image Detection module identifies redundant files in your media library and helps you remove them safely. One of the most-requested features we’ve ever received — now available in ThumbPress 6.0.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Image Editor — Edit Images Without Leaving WordPress\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Sometimes an uploaded image just needs a small adjustment — a crop, a rotation, a brightness tweak. The ThumbPress Image Editor lets you make those changes without ever leaving your WordPress dashboard.\u003C\u002Fp>\n\u003Cp>No Photoshop. No re-uploading. Edit, save, and publish right from your media library.\u003C\u002Fp>\n\u003Cp>🆕 \u003Cstrong>What’s New in ThumbPress 6.0\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Redesigned interface — cleaner, faster, and easier to navigate\u003C\u002Fli>\n\u003Cli>AVIF Image Converter — next-gen format support, with bulk conversion via Pro\u003C\u002Fli>\n\u003Cli>Duplicate Image Detection — find and remove redundant files from your media library\u003C\u002Fli>\n\u003Cli>Improved performance across all existing modules\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>👉 \u003Cstrong>Why ThumbPress Instead of Multiple Separate Plugins?\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>Most WordPress sites end up using 4–6 different plugins just to manage images:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>One for thumbnail control\u003C\u002Fli>\n\u003Cli>One for compression\u003C\u002Fli>\n\u003Cli>One for WebP conversion\u003C\u002Fli>\n\u003Cli>One for social media previews\u003C\u002Fli>\n\u003Cli>One for image cleanup\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>Each plugin adds overhead. Each one adds potential conflicts. And none of them talks to each other.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>ThumbPress is one plugin that does everything.\u003C\u002Fstrong> Thumbnail management, image compression, WebP and AVIF conversion, media library cleanup, duplicate detection, image protection — all in a single, unified interface. Install once, manage everything.\u003C\u002Fp>\n\u003Ch3>Source Code\u003C\u002Fh3>\n\u003Cp>This plugin includes a compiled JavaScript bundle (\u003Ccode>build\u002Fadmin.js\u003C\u002Fcode>) built with webpack, React, and TypeScript. The full uncompiled, human-readable source is included \u003Cstrong>inside this plugin\u003C\u002Fstrong>, so it can be reviewed, studied, modified, and rebuilt with no external dependency:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>React\u002FTypeScript source: \u003Ccode>spa\u002Fadmin\u002Fsrc\u002F\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Plain JS\u002FCSS: \u003Ccode>assets\u002F\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Build configuration: \u003Ccode>package.json\u003C\u002Fcode>, \u003Ccode>webpack.config.js\u003C\u002Fcode>, \u003Ccode>tailwind.config.js\u003C\u002Fcode>, \u003Ccode>postcss.config.js\u003C\u002Fcode>, \u003Ccode>tsconfig.json\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>To rebuild the compiled bundle from the included source, run these from the plugin directory:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Install dependencies: \u003Ccode>npm install\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Build: \u003Ccode>npm run build\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>This regenerates \u003Ccode>build\u002Fadmin.js\u003C\u002Fcode> and \u003Ccode>build\u002Ftailwind.css\u003C\u002Fcode> from \u003Ccode>spa\u002Fadmin\u002Fsrc\u002F\u003C\u002Fcode>.\u003C\u002Fp>\n\u003Ch3>External Services\u003C\u002Fh3>\n\u003Cp>This plugin connects to the following external services. No personal data is ever transmitted automatically — the only transmissions described below happen solely after an explicit, opt-in action by a logged-in administrator.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>ThumbPress Feedback Service (pluggable.io \u002F FluentCRM)\u003C\u002Fstrong>\u003Cbr \u002F>\nThumbPress can send your information to our marketing\u002FCRM endpoint (\u003Ccode>https:\u002F\u002Fmy.pluggable.io\u002F?fluentcrm=1\u003C\u002Fcode>) so we can follow up, improve the plugin, and understand how it is used.\u003C\u002Fp>\n\u003Cp>This service is used in two places, and \u003Cstrong>only\u003C\u002Fstrong> when you choose to participate:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cem>Activation survey notice\u003C\u002Fem> — if (and only if) you click the “Ok, I agree” button on the optional survey notice, the plugin sends your WordPress user first name, last name, email address, the plugin slug, and your site URL. Clicking “Remind me later”, dismissing, or ignoring the notice sends nothing.\u003C\u002Fli>\n\u003Cli>\u003Cem>Deactivation feedback form\u003C\u002Fem> — if (and only if) you click “Submit & Deactivate” on the optional feedback form shown when deactivating the plugin, it sends your WordPress user first name, last name, email address, the plugin slug, your site URL, the time since install, the deactivation reason(s) you selected, and any free-text feedback you typed. Clicking “Skip & Deactivate” sends nothing.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>No data is sent on activation, on normal usage, in the background, or on a schedule. Nothing is sent unless you actively submit one of the forms above.\u003C\u002Fp>\n\u003Cp>Service provided by ThumbPress \u002F Codexpert. Terms of Service: https:\u002F\u002Fthumbpress.co\u002Fterms-of-service\u002F — Privacy Policy: https:\u002F\u002Fthumbpress.co\u002Fprivacy-policy\u002F\u003C\u002Fp>\n\u003Cp>\u003Cstrong>WordPress.org Plugin API\u003C\u002Fstrong>\u003Cbr \u002F>\nThumbPress may connect to the WordPress.org API (api.wordpress.org) to check for plugin updates. This is standard WordPress behavior used by all plugins. No personal data is transmitted beyond what WordPress core sends.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>ThumbPress Website (thumbpress.co)\u003C\u002Fstrong>\u003Cbr \u002F>\nThe plugin links to thumbpress.co for Pro upgrade information. No data is sent automatically; links only open when the user clicks them.\u003C\u002Fp>\n","The all-in-one WordPress image optimization plugin. Disable thumbnails, compress images, convert to WebP & AVIF, clean your media library, and more.",30000,1338620,72,109,"2026-07-21T07:28:00.000Z","7.0.2","6.0","7.4",[52,53,54,55,56],"compress-images","image-optimization","media-library-cleaner","thumbnail-manager","webp-converter","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fimage-sizes\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-sizes.6.4.1.zip",99,1,"2026-07-01 00:00:00",{"slug":63,"name":64,"version":65,"author":66,"author_profile":67,"description":68,"short_description":69,"active_installs":70,"downloaded":71,"rating":72,"num_ratings":73,"last_updated":74,"tested_up_to":48,"requires_at_least":75,"requires_php":23,"tags":76,"homepage":81,"download_link":82,"security_score":12,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26},"unique-headers","Unique Headers","2.1.3","Ryan Hellyer","https:\u002F\u002Fprofiles.wordpress.org\u002Fryanhellyer\u002F","\u003Cp>This plugin has been actively maintained since 2012 and is used on over 20,000 websites worldwide.\u003C\u002Fp>\n\u003Ch4>Features\u003C\u002Fh4>\n\u003Cp>The \u003Ca href=\"https:\u002F\u002Fgeek.hellyer.kiwi\u002Fproducts\u002Funique-headers\u002F\" rel=\"nofollow ugc\">Unique Headers Plugin\u003C\u002Fa> adds a custom header image box to the post\u002Fpage edit screen. You can use this to upload a unique header image for that post, or use another image from your WordPress media library. When you view that page on the front-end of your site, the default header image for your site will be replaced by the unique header you selected.\u003C\u002Fp>\n\u003Cp>This functionality also works with categories and tags.\u003C\u002Fp>\n\u003Ch4>Requirements\u003C\u002Fh4>\n\u003Cp>You must use a theme which utilizes the built-in custom header functionality of WordPress. If your theme implement it’s own header functionality, then this plugin will not work with it.\u003C\u002Fp>\n\u003Ch4>Paid WordPress development\u003C\u002Fh4>\n\u003Cp>If you would like to pay for assistance, additional features to be added to the plugin or are just looking for general WordPress development services, please contact me via \u003Ca href=\"https:\u002F\u002Fryan.hellyer.kiwi\u002Fcontact\u002F\" rel=\"nofollow ugc\">my contact form\u003C\u002Fa>.\u003C\u002Fp>\n\u003Ch3>Development\u003C\u002Fh3>\n\u003Cp>This section is only relevant for developers building the plugin from source (e.g. cloning from GitHub). If you installed via WordPress.org, the plugin is ready to use — no build steps required.\u003C\u002Fp>\n\u003Cp>The plugin uses Composer for PHP autoloading and dependencies, npm for JavaScript tooling, and TypeScript for admin JavaScript.\u003C\u002Fp>\n\u003Cp>To set up a development environment:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Install PHP dependencies: \u003Ccode>composer install\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Install JavaScript dependencies: \u003Ccode>npm install\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Compile TypeScript to JavaScript: \u003Ccode>npm run build\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>To run tests and analysis:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>PHPCS (PSR-12 coding standards): \u003Ccode>composer phpcs\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>Auto-fix PHPCS violations: \u003Ccode>composer phpcbf\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>PHP-CS-Fixer (dry-run): \u003Ccode>composer cs\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>PHP-CS-Fixer (auto-fix): \u003Ccode>composer cs:fix\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>PHPStan static analysis: \u003Ccode>composer phpstan\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>PHPUnit unit tests: \u003Ccode>composer test\u003C\u002Fcode>\u003C\u002Fli>\n\u003Cli>TypeScript type checking: \u003Ccode>npm run typecheck\u003C\u002Fcode>\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>TypeScript source files are in \u003Ccode>src\u002Fts\u002F\u003C\u002Fcode>. The compiled output is written to \u003Ccode>assets\u002Fadmin.js\u003C\u002Fcode> and is what WordPress loads on the admin side.\u003C\u002Fp>\n\u003Ch4>Credits\u003C\u002Fh4>\n\u003Cp>Thanks to the following for help with the development of this plugin:\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fwww.redactsolutions.co.uk\" rel=\"nofollow ugc\">redactuk – Assistance with debugging.\u003Cbr \u002F>\n* \u003C\u002Fa>\u003Ca href=\"http:\u002F\u002Fwww.datamind.co.uk\u002F\" rel=\"nofollow ugc\">crabsallover – Assitance with debugging.\u003Cbr \u002F>\n* \u003C\u002Fa>\u003Ca href=\"http:\u002F\u002Fonmytodd.org\" rel=\"nofollow ugc\">Todd\u003C\u002Fa> – Assistance with implementing support for tags.\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fwestoresolutions.com\u002F\" rel=\"nofollow ugc\">Mariano J. Ponce\u003C\u002Fa> – Spanish translation.\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fwww.graphicana.de\u002F\" rel=\"nofollow ugc\">Tobias Klotz\u003C\u002Fa> – Deutsch (German) language translation.\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fnakri.co.uk\u002F\" rel=\"nofollow ugc\">Nadia Tokerud\u003C\u002Fa> – Proof-reading of Norsk Bokmål (Norwegian) translation.\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fbjornjohansen.no\u002F\" rel=\"nofollow ugc\">Bjørn Johansen\u003C\u002Fa> – Proof-reading of Norwegian Bokmål translation.\u003Cbr \u002F>\n* \u003Ca href=\"https:\u002F\u002Fwww.facebook.com\u002Fkaljam\u002F\" rel=\"nofollow ugc\">Karl Olofsson\u003C\u002Fa> – Proof-reading of Swedish translation.\u003Cbr \u002F>\n* \u003Ca href=\"http:\u002F\u002Fwww.jennybeaumont.com\u002F\" rel=\"nofollow ugc\">Jenny Beaumont\u003C\u002Fa> – French translation.\u003C\u002Fp>\n","Add unique custom header images to individual pages, posts, categories, or tags.",10000,453451,98,160,"2026-05-10T15:01:00.000Z","4.3",[77,78,79,21,80],"attachments","custom-header","header-images","taxonomy","https:\u002F\u002Fgeek.hellyer.kiwi\u002Fplugins\u002Funique-headers\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Funique-headers.2.1.3.zip",{"slug":84,"name":85,"version":86,"author":87,"author_profile":88,"description":89,"short_description":90,"active_installs":91,"downloaded":92,"rating":93,"num_ratings":94,"last_updated":95,"tested_up_to":96,"requires_at_least":49,"requires_php":50,"tags":97,"homepage":100,"download_link":101,"security_score":12,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26},"disable-media-permalink-by-hardweb-it","Disable Media Permalink by Hardweb.it","1.0","giangel84","https:\u002F\u002Fprofiles.wordpress.org\u002Fgiangel84\u002F","\u003Cp>Completely disable the Media Permalink generated by WP.\u003Cbr \u002F>\nIt’s useful for websites who doesn’t need the attachment’s page, it reduce Cookiebot crawled pages and more over.\u003Cbr \u002F>\nIt’s easy to use, no options, just activate the plugin and it will work as expected.\u003C\u002Fp>\n\u003Ch3>Donate\u003C\u002Fh3>\n\u003Cp>If you like this plugin and want to support my work, you can make a donation at this address: https:\u002F\u002Fwww.paypal.com\u002Fdonate?hosted_button_id=DEFQGNU2RNQ4Y – Thank you very much!\u003C\u002Fp>\n","Completely disable the Media Permalink generated by WP.",900,8290,82,7,"2026-03-04T15:49:00.000Z","6.9.5",[18,20,21,98,99],"permalink","remove-url","https:\u002F\u002Fhardweb.it\u002Fplugins","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fdisable-media-permalink-by-hardweb-it.1.0.zip",{"slug":103,"name":104,"version":105,"author":106,"author_profile":107,"description":108,"short_description":109,"active_installs":12,"downloaded":110,"rating":12,"num_ratings":30,"last_updated":111,"tested_up_to":112,"requires_at_least":113,"requires_php":23,"tags":114,"homepage":116,"download_link":117,"security_score":118,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26},"image-sizes-panel","Image Sizes Panel","0.4","Ben Huson","https:\u002F\u002Fprofiles.wordpress.org\u002Fhusobj\u002F","\u003Cp>Display a meta box when viewing a media item in the admin that display all generated images sizes.\u003C\u002Fp>\n","Display a meta box when viewing a media item in the admin that display all generated images sizes.",5549,"2022-02-22T00:05:00.000Z","5.9.13","3.9",[77,20,21,115],"sizes","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Fimage-sizes-panel\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fimage-sizes-panel.0.4.zip",85,{"slug":120,"name":121,"version":122,"author":123,"author_profile":124,"description":125,"short_description":126,"active_installs":12,"downloaded":127,"rating":12,"num_ratings":128,"last_updated":129,"tested_up_to":48,"requires_at_least":130,"requires_php":50,"tags":131,"homepage":136,"download_link":137,"security_score":12,"vuln_count":11,"unpatched_count":11,"last_vuln_date":25,"fetched_at":26},"unattached-media-manager","Unattached Media Manager","1.1.0","sungraizfaryad","https:\u002F\u002Fprofiles.wordpress.org\u002Fsungraizfaryad\u002F","\u003Ch4>Why This Plugin Is Different\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>Most media cleaner plugins help you delete unused images. This plugin fixes a fundamental WordPress problem first.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cp>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.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>The problem?\u003C\u002Fstrong> 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.\u003C\u002Fp>\n\u003Cp>\u003Cstrong>This makes WordPress’s native “Unattached” filter completely unreliable.\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Ch4>How Unattached Media Manager Fixes This\u003C\u002Fh4>\n\u003Cp>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:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>WordPress’s “Unattached” filter actually works\u003C\u002Fstrong> — It now shows only truly unused media\u003C\u002Fli>\n\u003Cli>\u003Cstrong>You can use WordPress’s native tools\u003C\u002Fstrong> — No need to depend on third-party plugins to manage media\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Import\u002Fexport plugins work correctly\u003C\u002Fstrong> — Tools like WP All Import, WP Migrate, Duplicator, and others can now properly identify and migrate media with their associated posts\u003C\u002Fli>\n\u003Cli>\u003Cstrong>You can safely uninstall this plugin\u003C\u002Fstrong> — The attachments remain as part of WordPress’s native structure\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>The Workflow\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Scan\u003C\u002Fstrong> — The plugin finds all media usage across your site (content, ACF, blocks, widgets, options, etc.)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Attach\u003C\u002Fstrong> — One-click to properly attach all “used but unattached” media to their parent posts\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review\u003C\u002Fstrong> — Now WordPress’s “Unattached” filter shows only genuinely unused files\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Clean Up\u003C\u002Fstrong> — Use WordPress’s native tools OR this plugin’s safe deletion features\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Done\u003C\u002Fstrong> — Uninstall if you want; the fixes stay with WordPress\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Yes, It Also Deletes Unused Media\u003C\u002Fh4>\n\u003Cp>Like other media cleaners, this plugin also helps you safely delete unused media with:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Trash support\u003C\u002Fstrong> — Move to trash first, restore if needed\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Permanent delete\u003C\u002Fstrong> — Remove forever when you’re sure\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Change history\u003C\u002Fstrong> — Track all attachment changes with one-click revert\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>But the real value is \u003Cstrong>fixing WordPress’s attachment system\u003C\u002Fstrong> so you don’t need to depend on any plugin long-term.\u003C\u002Fp>\n\u003Ch4>Two Processing Modes\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Browser-Driven (Recommended)\u003C\u002Fstrong> — Fast and reliable with real-time progress. Keep the browser tab open until complete.\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Background (WP-Cron)\u003C\u002Fstrong> — Processing continues even after closing your browser. Ideal for server cron setups.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Key Features\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Comprehensive Scanning\u003C\u002Fstrong> — Detects media usage in post content, featured images, Gutenberg blocks, ACF fields, Elementor, Meta Box, WooCommerce, SEO plugins, widgets, theme options, and more\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Fix Unattached Media\u003C\u002Fstrong> — One-click to properly attach all “used but unattached” media\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Media Library Integration\u003C\u002Fstrong> — See usage count directly in your Media Library list view\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Safe Deletion\u003C\u002Fstrong> — WordPress trash support with restore capability\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Change History\u003C\u002Fstrong> — Full audit trail with one-click revert for any attachment\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Pause & Resume\u003C\u002Fstrong> — Stop any operation and continue later\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Resource Aware\u003C\u002Fstrong> — Three modes (Low\u002FAuto\u002FHigh) for shared hosting to dedicated servers\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Export Reports\u003C\u002Fstrong> — Download CSV reports of all media usage\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Developer Friendly\u003C\u002Fstrong> — Hooks, filters, REST API, and WP-CLI commands\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>The Problem It Solves\u003C\u002Fh4>\n\u003Cp>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:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>The block editor (Gutenberg)\u003C\u002Fli>\n\u003Cli>Page builders like Elementor or Beaver Builder\u003C\u002Fli>\n\u003Cli>ACF image\u002Fgallery fields\u003C\u002Fli>\n\u003Cli>WooCommerce product galleries\u003C\u002Fli>\n\u003Cli>Theme customizer settings\u003C\u002Fli>\n\u003Cli>Widget areas\u003C\u002Fli>\n\u003Cli>Shortcodes\u003C\u002Fli>\n\u003Cli>Custom meta boxes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Unattached Media Manager finds ALL these references and properly attaches the media\u003C\u002Fstrong>, so WordPress correctly reflects which files are actually in use.\u003C\u002Fp>\n\u003Ch4>Server-Friendly Design\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>This plugin is designed to work on ALL servers, including shared hosting with limited resources:\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Never blocks your site\u003C\u002Fstrong> – All heavy operations are processed in batches\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Adaptive resource usage\u003C\u002Fstrong> – Automatically detects server limits and adjusts accordingly\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Three resource modes:\u003C\u002Fstrong>\n\u003Cul>\n\u003Cli>\u003Cstrong>Low Resources\u003C\u002Fstrong> – 5 items\u002Fbatch, 2-minute intervals (for shared hosting)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Auto (Recommended)\u003C\u002Fstrong> – 15 items\u002Fbatch, 1-minute intervals (adjusts automatically)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>High Performance\u003C\u002Fstrong> – 50 items\u002Fbatch, 30-second intervals (for dedicated servers)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Two processing strategies\u003C\u002Fstrong> – Choose browser-driven (fast) or background WP-Cron mode\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Supported Content Types\u003C\u002Fh4>\n\u003Cp>\u003Cstrong>ALL features below are FREE – no Pro version required!\u003C\u002Fstrong>\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Post Content\u003C\u002Fstrong> – Classic editor, Gutenberg blocks, shortcodes, inline styles, data attributes\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Featured Images\u003C\u002Fstrong> – Thumbnail assignments\u003C\u002Fli>\n\u003Cli>\u003Cstrong>ACF Fields\u003C\u002Fstrong> – Image, gallery, file, repeater, flexible content, and group fields\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Gutenberg Blocks\u003C\u002Fstrong> – Core image, gallery, cover, media & text blocks\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Elementor\u003C\u002Fstrong> – All widgets, backgrounds, galleries, sliders, and responsive images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Meta Box\u003C\u002Fstrong> – All field types including groups and cloneable fields\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WooCommerce\u003C\u002Fstrong> – Product galleries, variation images, downloadable files, category thumbnails\u003C\u002Fli>\n\u003Cli>\u003Cstrong>SEO Plugins\u003C\u002Fstrong> – Yoast SEO, Rank Math, All in One SEO, SEOPress (OpenGraph & Twitter images)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Widgets\u003C\u002Fstrong> – Image widgets, text widgets with media, custom HTML\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Theme Options\u003C\u002Fstrong> – Customizer settings, theme mods, custom logos\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Options Table\u003C\u002Fstrong> – Plugin settings that store media IDs or URLs\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Video & Audio\u003C\u002Fstrong> – HTML5 video\u002Faudio elements, poster images, source tags\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Responsive Images\u003C\u002Fstrong> – srcset attributes and lazy-loading data attributes\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>For Developers\u003C\u002Fh4>\n\u003Cp>Unattached Media Manager is built with extensibility in mind:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Hooks & Filters\u003C\u002Fstrong> – Extend scanning with custom parsers\u003C\u002Fli>\n\u003Cli>\u003Cstrong>REST API\u003C\u002Fstrong> – Query media usage programmatically\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP-CLI Commands\u003C\u002Fstrong> – Run scans from the command line (\u003Ccode>wp aioms scan\u003C\u002Fcode>)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Custom Post Types\u003C\u002Fstrong> – Automatically scans all public post types\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>How to Use\u003C\u002Fh3>\n\u003Ch4>Step 1: Run Your First Scan\u003C\u002Fh4>\n\u003Col>\n\u003Cli>Navigate to \u003Cstrong>Media \u003Cspan aria-hidden=\"true\" class=\"wp-exclude-emoji\">→\u003C\u002Fspan> Media Solution\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Click \u003Cstrong>Start Full Scan\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>Choose your processing mode (Browser-Driven recommended for most users)\u003C\u002Fli>\n\u003Cli>Watch the real-time progress as your media library is scanned\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Step 2: Review the Dashboard\u003C\u002Fh4>\n\u003Cp>After scanning, you’ll see:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>\u003Cstrong>Total Media Files\u003C\u002Fstrong> – All attachments in your library\u003C\u002Fli>\n\u003Cli>\u003Cstrong>In Use\u003C\u002Fstrong> – Media files with detected references\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Potentially Unused\u003C\u002Fstrong> – Media files with no detected references\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Used but Unattached\u003C\u002Fstrong> – Media that’s used but marked as “Unattached” in WordPress\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Total References\u003C\u002Fstrong> – Total number of places media is referenced\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Step 3: Fix Unattached Media\u003C\u002Fh4>\n\u003Cp>If you have “Used but Unattached” media:\u003C\u002Fp>\n\u003Col>\n\u003Cli>Click the \u003Cstrong>Attach All Media Files\u003C\u002Fstrong> button\u003C\u002Fli>\n\u003Cli>The operation runs in the background\u003C\u002Fli>\n\u003Cli>Each attachment is tracked in Change History for easy reverting\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Step 4: Clean Up Unused Media\u003C\u002Fh4>\n\u003Cp>Go to the \u003Cstrong>Unused Media\u003C\u002Fstrong> tab to:\u003C\u002Fp>\n\u003Col>\n\u003Cli>\u003Cstrong>Review\u003C\u002Fstrong> – Check each file before taking action\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Move to Trash\u003C\u002Fstrong> – Safely move to WordPress trash (can be restored)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Restore\u003C\u002Fstrong> – Bring items back from trash if needed\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Delete Permanently\u003C\u002Fstrong> – Remove forever (cannot be undone)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Empty Trash\u003C\u002Fstrong> – Delete all trashed media at once\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cstrong>Important:\u003C\u002Fstrong> All bulk operations run in the background. You’ll see a status bar showing progress.\u003C\u002Fp>\n\u003Ch4>Step 5: Review Change History\u003C\u002Fh4>\n\u003Cp>The \u003Cstrong>Change History\u003C\u002Fstrong> tab shows:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>All attachments made by this plugin\u003C\u002Fli>\n\u003Cli>When each change occurred\u003C\u002Fli>\n\u003Cli>What post each media was attached to\u003C\u002Fli>\n\u003Cli>Option to \u003Cstrong>Revert\u003C\u002Fstrong> any change (detaches the media)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Important Precautions\u003C\u002Fh3>\n\u003Ch4>Before Deleting Any Media\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Always run a full scan first\u003C\u002Fstrong> – Make sure the index is up to date\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review files manually\u003C\u002Fstrong> – The scanner detects database references, but images might be:\n\u003Cul>\n\u003Cli>Hardcoded in theme PHP files\u003C\u002Fli>\n\u003Cli>Used by external websites linking to your images\u003C\u002Fli>\n\u003Cli>Referenced in custom code or third-party plugins not yet supported\u003C\u002Fli>\n\u003Cli>Used in email templates stored outside WordPress\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Use Trash first\u003C\u002Fstrong> – Move to trash instead of deleting permanently\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Wait before emptying trash\u003C\u002Fstrong> – Keep trashed items for a few days to catch any issues\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>About “Potentially Unused” Media\u003C\u002Fh4>\n\u003Cp>Files marked as “Potentially Unused” means:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>No references were found in the scanned content\u003C\u002Fli>\n\u003Cli>\u003Cstrong>This doesn’t guarantee the file is unused\u003C\u002Fstrong>\u003C\u002Fli>\n\u003Cli>The file might be used in ways not detected:\n\u003Cul>\n\u003Cli>Theme template files (hardcoded)\u003C\u002Fli>\n\u003Cli>External sites linking to your images\u003C\u002Fli>\n\u003Cli>Custom plugins with non-standard storage\u003C\u002Fli>\n\u003Cli>CSS background images defined in stylesheets\u003C\u002Fli>\n\u003Cli>JavaScript-loaded images\u003C\u002Fli>\n\u003C\u002Ful>\n\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch4>Recommended Workflow\u003C\u002Fh4>\n\u003Col>\n\u003Cli>\u003Cstrong>Scan\u003C\u002Fstrong> – Run a full scan with all content types enabled\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Review\u003C\u002Fstrong> – Look at the Unused Media tab\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Research\u003C\u002Fstrong> – For each file, consider where it might be used\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Trash\u003C\u002Fstrong> – Move questionable items to trash (not permanent delete)\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Monitor\u003C\u002Fstrong> – Check your site for a few days for missing images\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Delete\u003C\u002Fstrong> – Only permanently delete after confirming no issues\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch4>Server Resources\u003C\u002Fh4>\n\u003Cul>\n\u003Cli>\u003Cstrong>Shared Hosting\u003C\u002Fstrong> – Use “Low Resources” mode in settings\u003C\u002Fli>\n\u003Cli>\u003Cstrong>If operations timeout\u003C\u002Fstrong> – Switch to Low Resources mode\u003C\u002Fli>\n\u003Cli>\u003Cstrong>Large media libraries\u003C\u002Fstrong> – The scan may take longer but will complete\u003C\u002Fli>\n\u003Cli>\u003Cstrong>WP Cron must work\u003C\u002Fstrong> – Ensure WordPress cron is running (check with your host)\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>Privacy Policy\u003C\u002Fh3>\n\u003Cp>Unattached Media Manager does not:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>Collect any personal data\u003C\u002Fli>\n\u003Cli>Send any data to external servers\u003C\u002Fli>\n\u003Cli>Use any third-party services\u003C\u002Fli>\n\u003Cli>Track users or usage\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>All data is stored locally in your WordPress database in custom tables that are removed when you uninstall the plugin.\u003C\u002Fp>\n\u003Ch3>Uninstallation\u003C\u002Fh3>\n\u003Cp>When you uninstall (delete) the plugin:\u003C\u002Fp>\n\u003Cul>\n\u003Cli>All custom database tables are removed\u003C\u002Fli>\n\u003Cli>All plugin options are deleted\u003C\u002Fli>\n\u003Cli>All plugin transients are cleared\u003C\u002Fli>\n\u003Cli>All scheduled cron events are removed\u003C\u002Fli>\n\u003Cli>Post meta created by the plugin is deleted\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Cp>\u003Cstrong>Note:\u003C\u002Fstrong> 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.\u003C\u002Fp>\n\u003Ch3>Credits\u003C\u002Fh3>\n\u003Cul>\n\u003Cli>Built with love for the WordPress community\u003C\u002Fli>\n\u003Cli>Icons from WordPress Dashicons\u003C\u002Fli>\n\u003Cli>Inspired by the need to keep media libraries clean and organized\u003C\u002Fli>\n\u003C\u002Ful>\n","Fix the WordPress Unattached media filter. Automatically attach used media files to their posts so you can safely clean up your library.",1508,2,"2026-06-26T20:01:00.000Z","5.8",[77,132,133,134,135],"cleanup","media-cleaner","media-library","unused-media","https:\u002F\u002Fwordpress.org\u002Fplugins\u002Funattached-media-manager\u002F","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Funattached-media-manager.1.1.0.zip",{"error":139,"url":140,"statusCode":141,"statusMessage":142,"message":142},true,"http:\u002F\u002Flocalhost\u002Fapi\u002Fplugins\u002Fs404-orphaned-attachment-scanner\u002Fbundle",404,"no bundle for this plugin yet",{"slug":4,"current_version":6,"total_versions":128,"versions":144},[145,151],{"version":6,"download_url":24,"svn_tag_url":146,"released_at":25,"has_diff":147,"diff_files_changed":148,"diff_lines":25,"trac_diff_url":149,"vulnerabilities":150,"is_current":139},"https:\u002F\u002Fplugins.svn.wordpress.org\u002Fs404-orphaned-attachment-scanner\u002Ftags\u002F1.1.4\u002F",false,[],"https:\u002F\u002Fplugins.trac.wordpress.org\u002Fchangeset?old_path=%2Fs404-orphaned-attachment-scanner%2Ftags%2F1.0.0&new_path=%2Fs404-orphaned-attachment-scanner%2Ftags%2F1.1.4",[],{"version":152,"download_url":153,"svn_tag_url":154,"released_at":25,"has_diff":147,"diff_files_changed":155,"diff_lines":25,"trac_diff_url":25,"vulnerabilities":156,"is_current":147},"1.0.0","https:\u002F\u002Fdownloads.wordpress.org\u002Fplugin\u002Fs404-orphaned-attachment-scanner.1.0.0.zip","https:\u002F\u002Fplugins.svn.wordpress.org\u002Fs404-orphaned-attachment-scanner\u002Ftags\u002F1.0.0\u002F",[],[]]