Description
IndexLane Safe WebP Queue converts JPEG and PNG media attachments and their generated image sizes to sibling .webp files from inside wp-admin.
The plugin checks local server support, estimates memory risk, preserves original files, skips unsafe files, and reports which images converted, skipped, or failed.
It is built for cautious local conversion, not cloud optimization or automatic original-file replacement.
Learn more at IndexLane.
What it does:
- Scans JPEG and PNG attachments in the Media Library.
- Checks GD and Imagick WebP support.
- Estimates memory risk before conversion.
- Converts selected original images and generated attachment sizes to sibling
.webpfiles. - Keeps original files.
- Reports sibling WebP files not owned by this plugin as conflicts and leaves them unchanged.
- Skips files that are too large, unsupported, missing, or likely unsafe for the current server.
- Exports the visible report as CSV.
- Deletes WebP files generated by this plugin when explicitly requested.
- Optionally uses generated WebP files in normal WordPress image output where a matching generated file exists.
- Can optionally generate WebP files for new uploads after WordPress finishes creating attachment sizes.
Limits:
- Does not rewrite post content.
- Does not replace attachment URLs.
- Does not delete original images.
- Does not convert GIF, SVG, AVIF, or existing WebP files.
- Does not crawl CSS, theme files, page builder fields, or hardcoded image URLs.
- Does not call an external API or optimization service.
- Frontend WebP serving is off by default and only affects normal WordPress image output when enabled.
- New-upload conversion is off by default.
Screenshots




Installation
- Upload the
indexlane-safe-webp-queuefolder to/wp-content/plugins/. - Activate the plugin in wp-admin.
- Go to Tools -> IndexLane Safe WebP Queue.
- Run a scan before converting images.
FAQ
-
Does this replace my JPEG or PNG files?
-
No. Original files are preserved. The plugin creates sibling
.webpfiles beside original and generated attachment image files. -
Will my frontend automatically serve WebP after conversion?
-
No. Frontend serving is off by default. When enabled, the plugin uses generated WebP files in normal WordPress image output where a matching generated file exists. It does not rewrite post content, attachment URLs, or database content.
-
Does this convert new uploads automatically?
-
Not by default. Existing media can be scanned and converted from Tools -> IndexLane Safe WebP Queue. Automatic WebP generation for new uploads can be enabled in settings.
-
Does it use a cloud service?
-
No. Conversion runs locally through WordPress image editors, GD, or Imagick when WebP writing support is available.
-
Why are large images skipped?
-
Image conversion memory use depends on decoded pixels, not just compressed file size. The plugin estimates decoded memory as width x height x 5 and skips files that look risky for the current PHP memory limit.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“IndexLane Safe WebP Queue” is open source software. The following people have contributed to this plugin.
ContributorsTranslate “IndexLane Safe WebP Queue” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.1.5
- Renamed the plugin to IndexLane Safe WebP Queue and aligned WordPress.org release metadata.
- Protected unrelated sibling WebP files as conflicts instead of replacing or deleting them.
- Generated and validated WebP output in a temporary file before installing it at the final path.
- Made statuses, browser request errors, CSV headers, selection labels, and result summaries translation-ready.
- Added a root GPL license, dated project changelog, repeatable release packaging, and exact-package checks.
- Declared testing through WordPress 7.1 with GD and Imagick coverage.
0.1.4
- Fixed cleanup pagination restarting when a page contains no generated files.
- Preserved generated-file ownership metadata when physical deletion fails so cleanup can be retried safely.
- Neutralized formula-like values in CSV exports to prevent spreadsheet formula injection.
- Validated every stored WebP file across the current report instead of stopping after the first valid file.
- Cached frontend generated-file inspection once per attachment and request.
- Added regression coverage for admin cleanup, CSV export, complete validation, and failed cleanup retries.
0.1.3
- Renamed the generated-file check from Delivery Check to Validate WebP.
- Added Mac/archive ZIP ignores to the repository.
- Refreshed screenshots with safety defaults visible and the Reason column readable.
- Widened the screenshot capture viewport for public plugin assets.
0.1.2
- Added generated attachment size conversion.
- Added stored WebP file map per attachment.
- Added optional frontend serving for normal WordPress image output.
- Added optional WebP generation for new uploads.
- Added pause, stop, resume, result filters, and WebP validation controls.
- Added generated WebP output validation.
- Added stale and invalid existing WebP detection.
- Stored new WebP maps with uploads-relative paths.
- Hardened uploads-directory validation before scan and conversion.
- Hardened cleanup path validation.
- Hardened AJAX settings and ID handling.
- Added clean Plugin Check CI build handling and ignored IDE/build artifacts.
- Removed full server paths from admin AJAX rows.
- Lowered the max pixel setting ceiling.
0.1.0
- Initial release.
- Added server capability checks.
- Added Media Library dry-run scan.
- Added small-batch selected conversion.
- Added sibling WebP output with originals preserved.
- Added skip reasons and CSV export.
- Added explicit cleanup for generated WebP files.
