{"id":316870,"date":"2026-05-27T19:08:17","date_gmt":"2026-05-27T19:08:17","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/mits-image-optimizer\/"},"modified":"2026-05-29T19:26:23","modified_gmt":"2026-05-29T19:26:23","slug":"mits-image-optimizer","status":"publish","type":"plugin","link":"https:\/\/mr.wordpress.org\/plugins\/mits-image-optimizer\/","author":23503449,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.2.12","stable_tag":"1.2.12","tested":"7.0","requires":"6.0","requires_php":"8.0","requires_plugins":null,"header_name":"MITS Image Optimizer","header_author":"MITS","header_description":"Auto-compress images on upload, bulk convert to WebP & AVIF, configure .htaccess for next-gen serving, scan for oversized images, and audit your site.","assets_banners_color":"3a2413","last_updated":"2026-05-29 19:26:23","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"","header_author_uri":"https:\/\/mits.pl","rating":0,"author_block_rating":0,"active_installs":0,"downloads":211,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"wpaluchmits","date":"2026-05-27 19:07:42"},"1.0.1":{"tag":"1.0.1","author":"wpaluchmits","date":"2026-05-28 07:04:30"},"1.0.2":{"tag":"1.0.2","author":"wpaluchmits","date":"2026-05-28 07:59:26"},"1.0.3":{"tag":"1.0.3","author":"wpaluchmits","date":"2026-05-28 10:23:04"},"1.0.4":{"tag":"1.0.4","author":"wpaluchmits","date":"2026-05-28 10:31:10"},"1.0.5":{"tag":"1.0.5","author":"wpaluchmits","date":"2026-05-28 10:41:06"},"1.0.6":{"tag":"1.0.6","author":"wpaluchmits","date":"2026-05-28 10:56:27"},"1.0.7":{"tag":"1.0.7","author":"wpaluchmits","date":"2026-05-28 12:09:32"},"1.0.8":{"tag":"1.0.8","author":"wpaluchmits","date":"2026-05-28 13:10:28"},"1.1.0":{"tag":"1.1.0","author":"wpaluchmits","date":"2026-05-28 17:07:00"},"1.2.0":{"tag":"1.2.0","author":"wpaluchmits","date":"2026-05-29 12:44:15"},"1.2.1":{"tag":"1.2.1","author":"wpaluchmits","date":"2026-05-29 13:28:23"},"1.2.10":{"tag":"1.2.10","author":"wpaluchmits","date":"2026-05-29 19:17:43"},"1.2.11":{"tag":"1.2.11","author":"wpaluchmits","date":"2026-05-29 19:21:07"},"1.2.12":{"tag":"1.2.12","author":"wpaluchmits","date":"2026-05-29 19:26:23"},"1.2.2":{"tag":"1.2.2","author":"wpaluchmits","date":"2026-05-29 18:16:38"},"1.2.3":{"tag":"1.2.3","author":"wpaluchmits","date":"2026-05-29 18:25:25"},"1.2.4":{"tag":"1.2.4","author":"wpaluchmits","date":"2026-05-29 18:33:01"},"1.2.5":{"tag":"1.2.5","author":"wpaluchmits","date":"2026-05-29 18:38:09"},"1.2.6":{"tag":"1.2.6","author":"wpaluchmits","date":"2026-05-29 18:44:15"},"1.2.7":{"tag":"1.2.7","author":"wpaluchmits","date":"2026-05-29 18:50:11"},"1.2.8":{"tag":"1.2.8","author":"wpaluchmits","date":"2026-05-29 18:55:42"},"1.2.9":{"tag":"1.2.9","author":"wpaluchmits","date":"2026-05-29 19:09:39"}},"upgrade_notice":{"1.0.1":"<p>Fixes AJAX 500 errors returning HTML instead of JSON. Adds error logging and a hidden diagnostic page.<\/p>","1.0.0":"<p>Initial release \u2014 no upgrade steps required.<\/p>"},"ratings":{"1":0,"2":0,"3":0,"4":0,"5":0},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3551229,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3551229,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3551229,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3551229,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.0.0","1.0.1","1.0.2","1.0.3","1.0.4","1.0.5","1.0.6","1.0.7","1.0.8","1.1.0","1.2.0","1.2.1","1.2.10","1.2.11","1.2.12","1.2.2","1.2.3","1.2.4","1.2.5","1.2.6","1.2.7","1.2.8","1.2.9"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3551220,"resolution":"1","location":"assets","locale":"","width":1280,"height":668},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3551220,"resolution":"2","location":"assets","locale":"","width":1280,"height":673},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3551220,"resolution":"3","location":"assets","locale":"","width":1280,"height":606}},"screenshots":{"1":"Main dashboard \u2014 image health score, library stats, and optimization overview.","2":"WebP Converter tab \u2014 batch conversion controls, server library status, and progress tracking.","3":"Site Audit tab \u2014 one-click free scan for performance, SEO, and security issues."}},"plugin_section":[262246],"plugin_tags":[194661,3868,133,29161,15376],"plugin_category":[50],"plugin_contributors":[264685],"plugin_business_model":[],"class_list":["post-316870","plugin","type-plugin","status-publish","hentry","plugin_section-dashboard-widgets","plugin_tags-avif","plugin_tags-compress","plugin_tags-image","plugin_tags-image-optimization","plugin_tags-webp","plugin_category-media","plugin_contributors-wpaluchmits","plugin_committers-wpaluchmits"],"banners":{"banner":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/banner-772x250.png?rev=3551229","banner_2x":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/banner-1544x500.png?rev=3551229","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/icon-128x128.png?rev=3551229","icon_2x":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/icon-256x256.png?rev=3551229","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/screenshot-1.png?rev=3551220","caption":"Main dashboard \u2014 image health score, library stats, and optimization overview."},{"src":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/screenshot-2.png?rev=3551220","caption":"WebP Converter tab \u2014 batch conversion controls, server library status, and progress tracking."},{"src":"https:\/\/ps.w.org\/mits-image-optimizer\/assets\/screenshot-3.png?rev=3551220","caption":"Site Audit tab \u2014 one-click free scan for performance, SEO, and security issues."}],"raw_content":"<!--section=description-->\n<p><strong>MITS Image Optimizer<\/strong> is a professional image optimization toolkit for WordPress. It compresses images automatically on upload, batch-converts your entire media library to WebP and AVIF, configures Apache to serve next-gen formats automatically, and scans your site for common technical SEO issues.<\/p>\n\n<h4>Features<\/h4>\n\n<p><strong>Auto-Compress on Upload<\/strong>\nEvery JPG\/PNG above a configurable size threshold is automatically scaled and compressed before WordPress generates its thumbnail sizes. No extra steps needed.<\/p>\n\n<p><strong>Bulk Compression<\/strong>\nRun a background batch job to compress all existing images in your media library. Progress is tracked and the job runs asynchronously \u2014 it won't block your browser.<\/p>\n\n<p><strong>WebP Converter<\/strong>\nBatch-convert all JPG\/PNG\/GIF files in your uploads directory to WebP format. Runs in the background using WP-Cron or a loopback HTTP request. Supports both Imagick and GD libraries.<\/p>\n\n<p><strong>AVIF Converter<\/strong>\nConvert images to AVIF \u2014 the next-generation format that can be 30\u201350% smaller than WebP. Requires Imagick 7+ with AVIF support or PHP 8.1+ with GD <code>imageavif()<\/code>. The plugin detects support automatically and warns you if AVIF is unavailable on your server.<\/p>\n\n<p><strong>Apache .htaccess Configuration<\/strong>\nOne click adds <code>mod_rewrite<\/code> rules to your <code>.htaccess<\/code> so Apache automatically serves <code>.webp<\/code> files to browsers that support them, with no code changes required in your theme.<\/p>\n\n<p><strong>Image Dimensions Scanner<\/strong>\nDetects images \u2265 1600 px wide that are used in posts or as featured images. Helps you find oversized images that slow down page loads, along with their file sizes, dimensions, and WebP\/AVIF conversion status.<\/p>\n\n<p><strong>Site Audit<\/strong>\nScans your site for the most common technical issues: missing alt text, oversized images, missing SSL, outdated plugins, pages without Open Graph tags, and more. Results include actionable recommendations.<\/p>\n\n<p><strong>Dashboard Widget<\/strong>\nA compact stats panel on the WordPress admin dashboard showing compression savings, WebP\/AVIF conversion counts, and a link to the optimizer.<\/p>\n\n<h4>Requirements<\/h4>\n\n<ul>\n<li>PHP 8.0+, WordPress 6.0+<\/li>\n<li>GD or Imagick PHP extension (for WebP\/compression)<\/li>\n<li>Imagick 7+ with AVIF or PHP 8.1+ GD (for AVIF conversion)<\/li>\n<li>Apache + <code>mod_rewrite<\/code> (for automatic WebP serving via <code>.htaccess<\/code>)<\/li>\n<\/ul>\n\n<h4>Privacy<\/h4>\n\n<p>This plugin does not collect any personal data and does not make any external HTTP requests.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Upload the <code>mits-image-optimizer<\/code> folder to <code>\/wp-content\/plugins\/<\/code>.<\/li>\n<li>Activate the plugin via <strong>Plugins \u2192 Installed Plugins<\/strong>.<\/li>\n<li>Navigate to <strong>MITS Optimizer<\/strong> in the WordPress admin sidebar.<\/li>\n<li>(Optional) Click <strong>Konfiguruj .htaccess<\/strong> on the WebP tab to enable automatic browser-side WebP delivery.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20delete%20my%20original%20images%3F\"><h3>Does this plugin delete my original images?<\/h3><\/dt>\n<dd><p>No. Original images are never deleted. WebP and AVIF files are saved alongside originals with a <code>.webp<\/code> or <code>.avif<\/code> extension (e.g. <code>photo.jpg<\/code> \u2192 <code>photo.jpg.webp<\/code>).<\/p><\/dd>\n<dt id=\"what%20happens%20if%20my%20server%20doesn%27t%20support%20avif%3F\"><h3>What happens if my server doesn't support AVIF?<\/h3><\/dt>\n<dd><p>The AVIF tab will display a warning with the reason (e.g. Imagick version too old, or GD <code>imageavif()<\/code> not available). WebP conversion and compression still work independently of AVIF support.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20object-cache%20or%20page-cache%20plugins%3F\"><h3>Does it work with object-cache or page-cache plugins?<\/h3><\/dt>\n<dd><p>Yes. The plugin only modifies image files in your uploads directory and your <code>.htaccess<\/code>. It is compatible with all major caching plugins.<\/p><\/dd>\n<dt id=\"can%20i%20run%20compression%20and%20webp%2Favif%20conversion%20at%20the%20same%20time%3F\"><h3>Can I run compression and WebP\/AVIF conversion at the same time?<\/h3><\/dt>\n<dd><p>It is not recommended. Run one batch job at a time to avoid server load spikes and to keep progress tracking accurate.<\/p><\/dd>\n<dt id=\"is%20the%20.htaccess%20change%20reversible%3F\"><h3>Is the .htaccess change reversible?<\/h3><\/dt>\n<dd><p>Yes. The plugin wraps its rules in clearly marked comment blocks (<code># BEGIN MITS WebP<\/code> \u2026 <code># END MITS WebP<\/code>). You can remove them manually or via the plugin button.<\/p><\/dd>\n<dt id=\"what%20image%20formats%20are%20supported%3F\"><h3>What image formats are supported?<\/h3><\/dt>\n<dd><p>Auto-compression and bulk compression support JPG, JPEG, PNG, and GIF. WebP and AVIF conversion support the same formats. GIF files are converted to static WebP\/AVIF (animation is not preserved).<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.2.12<\/h4>\n\n<ul>\n<li>Fix: ajax_import_settings now checks actual .htaccess file state (htaccess_is_active) instead of DB value when deciding whether to remove rules \u2014 previously if DB already said false but file still had rules, removal was skipped.<\/li>\n<li>Improve: conflict banner on settings page now has a one-click \"\u26a1 Zastosuj zalecane ustawienia\" button \u2014 no need to scroll to the import section.<\/li>\n<li>Improve: after applying settings, conflicts list updates inline without page reload \u2014 form fields, top banner and inline list all update in place.<\/li>\n<li>Improve: \"Wygeneruj i zastosuj\" can be triggered directly from the conflict banner button (generates recommended + applies in one click).<\/li>\n<\/ul>\n\n<h4>1.2.11<\/h4>\n\n<ul>\n<li>Fix: mits_import_settings and mits_recommended_settings were missing from the AJAX registration array \u2014 WordPress returned 0 for both actions causing \"B\u0142\u0105d.\" \/ \"B\u0142\u0105d zapisu.\" errors.<\/li>\n<\/ul>\n\n<h4>1.2.10<\/h4>\n\n<ul>\n<li>Add: Competing plugin detection in conflict checker \u2014 warns when WebP Converter for Media, ShortPixel, Smush, Imagify, EWWW, Optimole, TinyPNG or other optimization plugins are active alongside MITS.<\/li>\n<li>Add: WP Super Cache + PHP WebP Serving conflict detection \u2014 warns about cache serving wrong format to non-WebP browsers.<\/li>\n<li>Add: Autoptimize + PHP WebP Serving conflict hint.<\/li>\n<li>Add: Import settings \u2014 new card on settings page with \"Wygeneruj zalecane\" button (picks optimal config for detected server: .htaccess for Apache\/LiteSpeed, PHP WebP Serving for Nginx) and \"Zastosuj\" to apply JSON.<\/li>\n<li>Add: mits_recommended_settings and mits_import_settings AJAX endpoints.<\/li>\n<li>Add: After import, post-apply conflicts are shown inline without full page reload; page refreshes after 1.4s.<\/li>\n<\/ul>\n\n<h4>1.2.9<\/h4>\n\n<ul>\n<li>Add: Server detection (Apache \/ LiteSpeed \/ Nginx) \u2014 settings page now shows \"Tw\u00f3j serwer\" badge on the relevant section, disables .htaccess controls on Nginx with an explanatory banner, and highlights the Nginx config block.<\/li>\n<li>Add: Settings conflict detection \u2014 plugin detects and displays warnings for conflicting configurations (e.g. .htaccess enabled on Nginx, double WebP serving, setting enabled but no .webp files exist).<\/li>\n<li>Add: Conflicts section in settings page \u2014 shown as an orange banner above settings cards whenever conflicts are detected.<\/li>\n<li>Add: Extended JSON debug export \u2014 now includes server info, Imagick format capabilities (WebP\/AVIF read\/write), disk free space, active plugins list, memory usage, PHP SAPI, WP_DEBUG state, locale, timezone, and conflict list.<\/li>\n<li>Improve: Dashboard suggestions and score now server-aware \u2014 on Nginx, suggestions point to PHP WebP Serving \/ srcset instead of .htaccess; php_webp_serving counts toward webp_served score.<\/li>\n<li>Improve: Audit no longer flags missing .htaccess on Nginx when PHP WebP Serving or srcset is active.<\/li>\n<li>Improve: server type passed to JavaScript via mitsOptData.server for future JS-side hints.<\/li>\n<\/ul>\n\n<h4>1.2.8<\/h4>\n\n<ul>\n<li>Fix: .htaccess toggle button now keeps the database setting in sync with the actual .htaccess file state \u2014 previously toggling via the UI button could leave htaccess_webp option out of sync with reality.<\/li>\n<\/ul>\n\n<h4>1.2.7<\/h4>\n\n<ul>\n<li>Add: JSON export \/ debug button on Settings page \u2014 downloads a full status snapshot: plugin version, system info (PHP, GD, Imagick, memory), all settings, compression\/WebP\/AVIF\/lossless stats, and last dashboard scan results.<\/li>\n<li>Fix: Settings and About pages now inherit the full-width dark background layout matching the main optimizer page.<\/li>\n<\/ul>\n\n<h4>1.2.6<\/h4>\n\n<ul>\n<li>Fix: Settings page (?page=mits-settings) now renders a clean standalone view \u2014 plugin header + settings panels only, no tab navigation. Settings is only accessible from the WordPress sidebar menu.<\/li>\n<li>Remove: Settings tab and panel removed from the main tabbed interface.<\/li>\n<\/ul>\n\n<h4>1.2.5<\/h4>\n\n<ul>\n<li>Fix: visiting ?page=mits-settings or ?page=mits-about now redirects to the main plugin page with the correct tab pre-selected, instead of rendering the full interface again from scratch.<\/li>\n<\/ul>\n\n<h4>1.2.4<\/h4>\n\n<ul>\n<li>Fix: \"Ustawienia\" tab added to the main navigation bar \u2014 visiting ?page=mits-settings now correctly opens the settings panel instead of showing the dashboard. .htaccess and compression controls are now always reachable via the tab.<\/li>\n<\/ul>\n\n<h4>1.2.3<\/h4>\n\n<ul>\n<li>Fix: dashboard suggestion buttons for \".htaccess\" and \"Settings\" now navigate correctly to the Settings submenu page instead of silently failing (the settings panel is a separate WP admin page, not a tab).<\/li>\n<\/ul>\n\n<h4>1.2.2<\/h4>\n\n<ul>\n<li>Fix: JPEG \u2192 WebP scanner now finds ALL JPEG attachments, including those that already have a .webp sidecar (created by bulk WebP Converter). Previously these were skipped, showing \"no files found\" on sites where WebP Converter had already run.<\/li>\n<li>Improvement: JPEG \u2192 WebP conversion reuses an existing .webp sidecar file instead of re-encoding, then removes the original JPEG and updates WordPress metadata. Column in results table shows current WebP size alongside JPEG size.<\/li>\n<\/ul>\n\n<h4>1.2.1<\/h4>\n\n<ul>\n<li>Fix: .htaccess block now includes AVIF serving rules before WebP \u2014 browsers receive .avif when the file exists, falling back to .webp then original. Existing installations with .htaccess active are updated automatically on next save.<\/li>\n<li>Fix: PHP WebP Serving now also activates for browsers that send image\/avif in the Accept header; AVIF is preferred over WebP when both exist.<\/li>\n<li>Fix: WebP\/AVIF srcset filters (WebP in srcset + PHP Serving) now prefer AVIF over WebP when the browser accepts it.<\/li>\n<li>Fix: image scanner (bulk compress, WebP\/AVIF scan) no longer skips files in directories with unreadable subdirectories; uses CATCH_GET_CHILD to continue past permission errors instead of aborting silently.<\/li>\n<li>Fix: removed false-negative check in scan_images that could exclude .jpg files in edge-case directory structures.<\/li>\n<li>Improvement: Nginx configuration snippet updated \u2014 dual map variables for AVIF and WebP with try_files fallback chain.<\/li>\n<\/ul>\n\n<h4>1.2.0<\/h4>\n\n<ul>\n<li>Add: JPEG \u2192 WebP converter in the PNG \u2192 JPG tab \u2014 scans all JPEG attachments without a .webp counterpart, converts each one and replaces the original, updates WordPress metadata, thumbnails, and all content URLs.<\/li>\n<li>Change: PNG scan now finds all PNG files regardless of size (previously filtered to \u2265 150 KB).<\/li>\n<\/ul>\n\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Add: PNG backup restore \u2014 lists saved backup ZIPs, one-click restore extracts original PNGs, reverts WordPress metadata, content URLs, and removes .webp files.<\/li>\n<li>Fix: PNG \u2192 WebP table no longer clips the action button \u2014 removed conflicting overflow:hidden from card.<\/li>\n<li>Fix: Admin notices from other plugins (AccessiYes, Rank Math, etc.) are now suppressed on all MITS pages.<\/li>\n<\/ul>\n\n<h4>1.0.9<\/h4>\n\n<ul>\n<li>Fix: PNG \u2192 WebP conversion now handles the case where a .webp file already exists (created by WebP Converter) \u2014 instead of blocking with \"file exists\", it skips re-encoding and proceeds to delete the PNG source and update WordPress metadata.<\/li>\n<\/ul>\n\n<h4>1.0.8<\/h4>\n\n<ul>\n<li>Add: PHP WebP Serving \u2014 replaces image URLs in HTML output with .webp versions when the browser supports WebP and the .webp file exists. Works on Apache and Nginx without any server configuration. Sends Vary: Accept header for correct caching behaviour. Off by default.<\/li>\n<\/ul>\n\n<h4>1.0.7<\/h4>\n\n<ul>\n<li>Add: \"Pobierz ZIP (backup)\" button on PNG \u2192 JPG\/WebP tab \u2014 creates a ZIP archive of all found PNG originals for safe local backup before conversion.<\/li>\n<li>Change: \"Konwertuj wszystkie\" now automatically creates a backup ZIP before starting batch conversion; conversion is blocked if backup fails.<\/li>\n<\/ul>\n\n<h4>1.0.6<\/h4>\n\n<ul>\n<li>Add: \"Konwertuj wszystkie\" bulk button on the PNG \u2192 JPG\/WebP tab \u2014 converts all found PNG files in one click without losing the per-file option.<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Add: Nginx WebP serving configuration snippet in Settings (alongside Apache .htaccess).<\/li>\n<li>Change: .htaccess and Nginx sections moved into the Settings page; removed separate .htaccess tab.<\/li>\n<li>Change: Settings and O MITS moved to WordPress sidebar submenu for easier access.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Add: Welcome notice shown after plugin activation with 3-step quick-start guide and a dismiss button.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fix: Dashboard scan no longer scans the filesystem \u2014 uses WordPress database queries instead, making it instant even on stores with 100k+ products.<\/li>\n<li>Fix: WebP\/AVIF coverage is now estimated from a 500-attachment sample (extrapolated to full library) rather than iterating all files.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Add: \"Settings\" quick-link on the Plugins list page.<\/li>\n<li>Fix: Missing logo-mits.svg causing 404 in the admin header.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: AJAX handlers now return proper JSON error responses instead of HTTP 500 HTML on unexpected PHP errors.<\/li>\n<li>Add: Built-in error logger \u2014 errors are saved to a log file in the uploads directory for easier debugging.<\/li>\n<li>Add: Hidden diagnostic page at wp-admin\/admin.php?page=mits-debug showing system info (PHP, GD, Imagick, upload directory permissions, WP-Cron status) and the error log with a clear button.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Auto-compression on upload with configurable quality and max-width.<\/li>\n<li>Bulk compression with background batch processing and progress tracking.<\/li>\n<li>WebP Converter with Imagick and GD support.<\/li>\n<li>AVIF Converter with Imagick 7+ and GD imageavif() support.<\/li>\n<li>Apache .htaccess automatic WebP serving configuration.<\/li>\n<li>Image Dimensions Scanner detecting oversized images in use.<\/li>\n<li>Site Audit with checks for missing alt, SSL, Open Graph, plugin updates, and more.<\/li>\n<li>WordPress Dashboard Widget with optimization statistics.<\/li>\n<\/ul>","raw_excerpt":"Auto-compress images on upload, bulk convert to WebP &amp; AVIF, manage .htaccess WebP serving, and audit your site \u2014 all in one plugin.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/316870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=316870"}],"author":[{"embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/wpaluchmits"}],"wp:attachment":[{"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=316870"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=316870"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=316870"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=316870"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=316870"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/mr.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=316870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}