PHPackages                             soderlind/vmfa-media-cleanup - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. soderlind/vmfa-media-cleanup

ActiveWordpress-plugin[Utility &amp; Helpers](/categories/utility)

soderlind/vmfa-media-cleanup
============================

Media maintenance add-on for Virtual Media Folders.

1.3.0(2mo ago)20[18 PRs](https://github.com/soderlind/vmfa-media-cleanup/pulls)GPL-2.0-or-laterPHPPHP &gt;=8.3CI passing

Since Feb 6Pushed 2w agoCompare

[ Source](https://github.com/soderlind/vmfa-media-cleanup)[ Packagist](https://packagist.org/packages/soderlind/vmfa-media-cleanup)[ RSS](/packages/soderlind-vmfa-media-cleanup/feed)WikiDiscussions main Synced 1w ago

READMEChangelog (10)Dependencies (7)Versions (37)Used By (0)

Virtual Media Folders — Media Cleanup
=====================================

[](#virtual-media-folders--media-cleanup)

Add-on for [Virtual Media Folders](https://wordpress.org/plugins/virtual-media-folders/) that helps you find and manage unused, duplicate, and oversized media in your WordPress library.

Features
--------

[](#features)

- **Unused media detection** — deep content scanning across Gutenberg, classic editor, featured images, widgets, and custom meta keys.
- **Duplicate detection** — SHA-256 file hashing with primary/copy management and one-click trash of non-primary copies.
- **Oversized file detection** — configurable per-type thresholds (images, video, audio, documents).
- **Non-destructive actions** — archive to a virtual folder, trash (with restore), or flag for review.
- **Background scanning** — powered by Action Scheduler for large media libraries.
- **Admin dashboard** — React-based UI with tabs for Scan, Unused, Duplicates, Oversized, Flagged, Trash, and Settings.
- **WP-CLI support** — scan, list, archive, trash, flag, and manage duplicates from the command line.
- **Internationalization** — fully translatable; ships with Norwegian Bokmål (nb\_NO).

Requirements
------------

[](#requirements)

RequirementVersionWordPress6.8+PHP8.3+[Virtual Media Folders](https://wordpress.org/plugins/virtual-media-folders/)activeInstallation
------------

[](#installation)

Recommended: Use the [Add-On Manager](https://github.com/soderlind/vmfa) to install the add-on.

Manual installation:

1. Download [`vmfa-media-cleanup.zip`](https://github.com/soderlind/vmfa-media-cleanup/releases/latest/download/vmfa-media-cleanup.zip)
2. Upload via `Plugins → Add New → Upload Plugin`
3. Activate via `WordPress Admin → Plugins`

Plugin [updates are handled automatically](https://github.com/soderlind/wordpress-plugin-github-updater#readme) via GitHub. No need to manually download and install updates.

Usage
-----

[](#usage)

### Admin Dashboard

[](#admin-dashboard)

Navigate to **Media → Virtual Folders → Media Cleanup**. The dashboard has seven tabs:

TabPurpose**Scan**Start/monitor scans, view progress**Unused**Media not referenced in any post content or featured image**Duplicates**Groups of files sharing the same hash — set primary, trash copies**Oversized**Files exceeding your configured size thresholds**Flagged**Items you've manually flagged for later review**Trash**Trashed items with restore/permanent-delete options**Settings**Thresholds, scan depth, batch size, auto-scan, archive folder### WP-CLI

[](#wp-cli)

```
wp vmfa-cleanup scan              # Run a full scan
wp vmfa-cleanup scan --async      # Run scan in background
wp vmfa-cleanup list --type=unused
wp vmfa-cleanup list --type=duplicate --format=csv
wp vmfa-cleanup stats             # Show scan statistics
wp vmfa-cleanup archive --type=unused --yes
wp vmfa-cleanup trash --type=unused --yes
wp vmfa-cleanup flag 42 56 78
wp vmfa-cleanup unflag 42 56
wp vmfa-cleanup duplicates        # List duplicate groups
wp vmfa-cleanup rehash            # Recompute file hashes
```

Developer Documentation
-----------------------

[](#developer-documentation)

REST API reference, hooks/filters, project structure, and build instructions are in [docs/DEVELOPER.md](docs/DEVELOPER.md).

License
-------

[](#license)

GPL-2.0-or-later

###  Health Score

43

—

FairBetter than 89% of packages

Maintenance90

Actively maintained with recent releases

Popularity3

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity61

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~3 days

Total

10

Last Release

87d ago

Major Versions

0.5.1 → 1.0.02026-02-09

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1649452?v=4)[Per Søderlind](/maintainers/soderlind)[@soderlind](https://github.com/soderlind)

---

Top Contributors

[![soderlind](https://avatars.githubusercontent.com/u/1649452?v=4)](https://github.com/soderlind "soderlind (38 commits)")

---

Tags

virtual-media-folderswordpress-media-librarywordpress-plugin

###  Code Quality

TestsPest

### Embed Badge

![Health badge](/badges/soderlind-vmfa-media-cleanup/health.svg)

```
[![Health](https://phpackages.com/badges/soderlind-vmfa-media-cleanup/health.svg)](https://phpackages.com/packages/soderlind-vmfa-media-cleanup)
```

###  Alternatives

[10up/10up-experience

The 10up Experience plugin configures WordPress to better protect and inform clients, aligned to 10up's best practices

139498.5k](/packages/10up-10up-experience)[davidanderson684/simba-plugin-manager-updater

This class is an updates checker and UI for WordPress plugins that are hosted using the Simba Plugin Manager plugin

2753.4k](/packages/davidanderson684-simba-plugin-manager-updater)[pixelalbatross/slider-block

132.2k](/packages/pixelalbatross-slider-block)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
