Add-on for Virtual Media Folders that lets you export folders (or subtrees) as ZIP archives with optional CSV manifests.
- ZIP export — export any folder as a downloadable ZIP archive with the original folder hierarchy preserved.
- Include subfolders — optionally include all descendent folders in the export.
- CSV manifest — generate a manifest with ID, filename, URL, alt text, caption, description, MIME type, file size, dimensions, date uploaded, and folder path.
- Background processing — powered by Action Scheduler for large folders.
- Automatic cleanup — expired exports are automatically removed after 24 hours.
- Admin dashboard — React-based UI with folder picker, export options, progress tracking, and export history.
- WP-CLI support — export, list, and clean up from the command line.
| Requirement | Version |
|---|---|
| WordPress | 6.8+ |
| PHP | 8.3+ |
| Virtual Media Folders | active |
- Download
vmfa-folder-exporter.zip - Upload via
Plugins → Add New → Upload Plugin - Activate via
WordPress Admin → Plugins
Plugin updates are handled automatically via GitHub. No need to manually download and install updates.
Navigate to Media → Virtual Folders → Folder Exporter. The dashboard provides:
| Section | Purpose |
|---|---|
| Stats | Total available folders |
| Export Folder | Select a folder, choose options, start export |
| Progress | Real-time progress bar and download button |
| Recent Exports | History table with download/delete actions |
| Option | Default | Description |
|---|---|---|
| Include subfolders | ✅ | Include all descendent folders in the ZIP |
| Include CSV manifest | ✅ | Add a manifest.csv file at the ZIP root |
| Column | Description |
|---|---|
| ID | Attachment post ID |
| filename | Original filename |
| url | Full attachment URL |
| alt_text | Image alt text |
| caption | Attachment caption |
| description | Attachment description |
| mime_type | MIME type (e.g., image/jpeg) |
| file_size_bytes | File size in bytes |
| width | Image width in pixels (if applicable) |
| height | Image height in pixels (if applicable) |
| date_uploaded | Upload date |
| folder_path | Virtual folder path (e.g., Photos/2025/Summer) |
wp vmfa-export folders # List folders with IDs
wp vmfa-export folders --format=json
wp vmfa-export folder 42 # Export folder ID 42 as ZIP
wp vmfa-export folder 42 --output=/tmp/photos.zip
wp vmfa-export folder 42 --no-children
wp vmfa-export folder 42 --no-manifest
wp vmfa-export list # List recent exports
wp vmfa-export list --format=json
wp vmfa-export clean # Remove expired exports
wp vmfa-export clean --all # Remove all exportsUse wp vmfa-export folders to find the folder ID needed by wp vmfa-export folder <id>. The ID is also visible in the admin folder picker.
See docs/DEVELOPER.md for filters, REST API reference with examples, WP-CLI details, and build/test instructions.
GPL-2.0-or-later