=== Image Compressor WebP by htmlrunner ===
Contributors: htmlrunner
Tags: webp, image optimizer, image converter, image compression, media to webp
Requires at least: 5.0
Tested up to: 6.9
Requires PHP: 7.2
Stable tag: 1.1
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Donate link: https://htmlrunner.com
Convert media library images to WebP, JPG or PNG with per-image quality, version history, automatic backups and daily optimization.

== Description ==

**Image Compressor WebP by htmlrunner** converts images in your media library to WebP (or JPG/PNG) from a clean, minimal dashboard. Every conversion is fully non-destructive: the original is never lost.

= Non-destructive by design =

* Before every conversion, the current file is snapshotted into a hidden, web-inaccessible backup folder (`wp-content/uploads/wp-webp-backup/`), protected with `.htaccess` rules.
* The attachment then switches to the converted file and old image URLs inside your posts and pages are rewritten automatically — the original is unlinked from everywhere it was used, but never permanently deleted.
* Restore any previous version at any time — real **undo and redo** for every single image.

= Key features =

* **Full version history** — every conversion creates a version record (original, format, quality, date, size, space saved). Open History on any image and restore any version with one click. Undo/redo buttons included.
* **Per-image control** — each image can be converted with its own output format (WebP, JPG or PNG) and its own quality level, overriding the global defaults.
* **Automatic backups** — originals are snapshotted automatically before conversion. A Backups page shows every snapshot with size and age, plus per-image deletion, "back up all originals" and an optional retention period that auto-purges old snapshots.
* **Daily scheduled scan** — enable the schedule, pick a time (default 03:00) and the plugin scans the library and optimizes pending images in batches every day via WP-Cron. Large libraries are processed in background follow-up batches, with a scan log.
* **Auto-convert on upload** — new JPEG/PNG uploads are converted automatically with your defaults.
* **Savings dashboard** — converted/pending counts, total space saved, a 14-day savings chart and a per-format breakdown (WebP/JPG/PNG).
* **Smart library view** — search by filename, filter by status (pending/converted) and format, paginated table with bulk conversion and "Convert All Pending".
* **Imagick or GD** — choose the engine; Imagick is used automatically when available for smaller output.
* **100% on-server processing** — no image ever leaves your hosting environment, no API keys, no accounts, no subscriptions.

= Your Images Never Leave Your Server =

All processing runs locally with PHP GD or Imagick — the tools already installed on virtually every hosting plan. No external calls, no data transfer, fully offline-capable.

= Who Made This =

Developed and maintained by [htmlrunner.com](https://htmlrunner.com). For full documentation, updates and usage guidance, visit the official plugin page: [https://htmlrunner.com/wordpress-plugins/image-compressor-webp-by-htmlrunner/](https://htmlrunner.com/wordpress-plugins/image-compressor-webp-by-htmlrunner/)

== Installation ==

1. Upload the `webp-progress-converter` folder to the `/wp-content/plugins/` directory, or install through WordPress: **Plugins → Add New → Upload Plugin**.
2. Activate the plugin through the 'Plugins' menu in your WordPress dashboard.
3. Open **WebP Converter** in your dashboard sidebar.
4. Select images and click **Convert**, or use the History button on any image to restore a previous version.
5. Optionally open **WebP Converter → Settings** to set your default quality/format, enable auto-convert on upload, the daily scheduled scan, or backup retention.

No additional setup is required. The plugin uses your server's existing PHP environment.

== Frequently Asked Questions ==

= Are my images sent to your servers? =

No. Every conversion happens entirely on your own hosting server using PHP GD or Imagick. Your images are never uploaded, transmitted, or shared with us or any external service.

= Is the original image deleted? =

No. Before each conversion the current file is copied into a hidden backup folder and recorded as a version. You can restore any version from the History panel at any time. Old backups can be purged manually, or automatically after a retention period you set in Settings.

= How does the daily scheduled scan work? =

Enable "Daily scheduled scan" in Settings and choose a time (default 03:00). WP-Cron then scans the media library daily and optimizes pending images in batches — the batch size is configurable. If the library is large, follow-up runs are scheduled automatically until everything is optimized. A scan log shows the last run result.

= Can I choose the output format per image? =

Yes. Every image can be converted to WebP, JPG or PNG with its own quality. The format and quality defaults are set globally in Settings, and every image can override them individually.

= What happens if my server does not have GD or Imagick? =

The plugin requires either the PHP GD extension (with WebP support) or Imagick. Both are standard on nearly all shared hosting environments. If neither is available, the plugin displays a clear error message instead of converting.

= Does it delete the original images? =

No. To reclaim disk space the plugin unlinks the original file from the live uploads folder after snapshotting it into the protected backup folder, and rewrites old URLs in your content to point to the new file. Restoring a version brings the file back and reverses the URL changes.

= Where can I find more information? =

Visit the official plugin page at [https://htmlrunner.com/wordpress-plugins/image-compressor-webp-by-htmlrunner/](https://htmlrunner.com/wordpress-plugins/image-compressor-webp-by-htmlrunner/) for documentation and updates.

== Changelog ==

= 1.1 =
* Complete rewrite with a clean, minimal white interface — compact stat cards, slim savings chart, neutral table, single-blue accent and Plus Jakarta Sans typography.
* Non-destructive conversion: originals are snapshotted to a hidden, protected backup folder before every change.
* Full version history with undo/redo and per-version restore.
* Per-image quality and output format (WebP / JPG / PNG) with global defaults.
* Automatic backups page with per-image management, backup-all and retention cleanup.
* Daily scheduled scan with configurable time, batch size, follow-up runs and scan log.
* Auto-convert on upload.
* Savings statistics and 14-day activity chart.
* Smart library search and filters (status, format) with paginated AJAX loading.
* Bulk conversion and "Convert All Pending".
* Engine selection (Auto / GD / Imagick).

= 1.0 =
* Initial release.
* Bulk conversion support for the media library.
* Settings page for adjustable compression quality.
* Fully local, server-side processing with no external data transfer.

== Upgrade Notice ==

= 1.1 =
This version is a complete rewrite with a new interface and many new features: version history with undo/redo, automatic backups, per-image quality/format, daily scheduled scans and savings analytics. Existing settings are preserved.
