{"id":142511,"date":"2021-07-14T02:40:05","date_gmt":"2021-07-14T02:40:05","guid":{"rendered":"https:\/\/ja.wordpress.org\/plugins\/still-be-image-quality-control\/"},"modified":"2026-08-01T05:17:32","modified_gmt":"2026-08-01T05:17:32","slug":"still-be-image-quality-control","status":"publish","type":"plugin","link":"https:\/\/id.wordpress.org\/plugins\/still-be-image-quality-control\/","author":17870029,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"2.1.3","stable_tag":"2.1.3","tested":"7.0.2","requires":"5.8.1","requires_php":"7.4","requires_plugins":null,"header_name":"Image Quality Control | Still BE","header_author":"Daisuke Yamamoto","header_description":"Make sure to control the compression quality (level) for each image size individually. (Available: WordPress 5.3+)","assets_banners_color":"452922","last_updated":"2026-08-01 05:17:32","external_support_url":"","external_repository_url":"","donate_link":"https:\/\/donate.stripe.com\/aEUg2Q0iKgzbf0Q9AE","header_plugin_uri":"","header_author_uri":"https:\/\/web.analogstd.com\/","rating":5,"author_block_rating":0,"active_installs":400,"downloads":14684,"num_ratings":4,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"0.10.0":{"tag":"0.10.0","author":"analogstudio","date":"2021-11-03 08:13:26"},"0.10.1":{"tag":"0.10.1","author":"analogstudio","date":"2021-11-03 08:25:15"},"0.10.2":{"tag":"0.10.2","author":"analogstudio","date":"2021-11-04 03:22:42"},"0.10.3":{"tag":"0.10.3","author":"analogstudio","date":"2021-11-08 08:32:38"},"0.10.4":{"tag":"0.10.4","author":"analogstudio","date":"2021-11-09 01:03:44"},"0.10.5":{"tag":"0.10.5","author":"analogstudio","date":"2021-11-19 03:07:31"},"0.10.6":{"tag":"0.10.6","author":"analogstudio","date":"2021-11-29 05:08:30"},"0.10.7":{"tag":"0.10.7","author":"analogstudio","date":"2021-12-10 01:02:58"},"0.10.8":{"tag":"0.10.8","author":"analogstudio","date":"2021-12-10 14:42:59"},"0.10.9":{"tag":"0.10.9","author":"analogstudio","date":"2021-12-19 06:56:00"},"0.5.3":{"tag":"0.5.3","author":"analogstudio","date":"2021-07-14 05:48:58"},"0.6.0":{"tag":"0.6.0","author":"analogstudio","date":"2021-07-28 00:50:16"},"0.6.1":{"tag":"0.6.1","author":"analogstudio","date":"2021-08-19 07:50:13"},"0.7.3":{"tag":"0.7.3","author":"analogstudio","date":"2021-09-10 04:51:29"},"0.7.4":{"tag":"0.7.4","author":"analogstudio","date":"2021-09-29 06:34:14"},"0.7.5":{"tag":"0.7.5","author":"analogstudio","date":"2021-10-17 07:28:40"},"0.8.0":{"tag":"0.8.0","author":"analogstudio","date":"2021-10-19 03:29:13"},"0.8.1":{"tag":"0.8.1","author":"analogstudio","date":"2021-10-28 00:13:29"},"0.9.0":{"tag":"0.9.0","author":"analogstudio","date":"2021-10-28 07:59:34"},"0.9.1":{"tag":"0.9.1","author":"analogstudio","date":"2021-11-03 06:50:38"},"1.0.0":{"tag":"1.0.0","author":"analogstudio","date":"2022-01-06 14:46:54"},"1.1.0":{"tag":"1.1.0","author":"analogstudio","date":"2022-01-09 07:21:48"},"1.1.1":{"tag":"1.1.1","author":"analogstudio","date":"2022-01-30 05:08:35"},"1.1.2":{"tag":"1.1.2","author":"analogstudio","date":"2022-02-20 08:36:40"},"1.2.0":{"tag":"1.2.0","author":"analogstudio","date":"2022-03-11 13:44:22"},"1.2.1":{"tag":"1.2.1","author":"analogstudio","date":"2022-04-15 04:42:30"},"1.2.2":{"tag":"1.2.2","author":"analogstudio","date":"2022-04-15 04:39:12"},"1.2.3":{"tag":"1.2.3","author":"analogstudio","date":"2022-04-30 07:35:49"},"1.2.4":{"tag":"1.2.4","author":"analogstudio","date":"2022-05-23 13:38:04"},"1.3.0":{"tag":"1.3.0","author":"analogstudio","date":"2022-10-13 06:11:17"},"1.4.1":{"tag":"1.4.1","author":"analogstudio","date":"2022-11-08 03:22:04"},"1.5.0":{"tag":"1.5.0","author":"analogstudio","date":"2023-03-08 07:46:14"},"1.5.1":{"tag":"1.5.1","author":"analogstudio","date":"2023-03-09 00:01:17"},"1.5.2":{"tag":"1.5.2","author":"analogstudio","date":"2023-04-22 02:40:53"},"1.6.0":{"tag":"1.6.0","author":"analogstudio","date":"2023-08-16 02:00:47"},"1.7.0":{"tag":"1.7.0","author":"analogstudio","date":"2023-11-20 01:26:08"},"1.7.1":{"tag":"1.7.1","author":"analogstudio","date":"2024-11-13 01:33:30"},"1.7.3":{"tag":"1.7.3","author":"analogstudio","date":"2025-05-01 09:35:55"},"1.7.4":{"tag":"1.7.4","author":"analogstudio","date":"2025-05-01 09:34:22"},"2.0.0":{"tag":"2.0.0","author":"analogstudio","date":"2026-07-09 08:27:30"},"2.0.1":{"tag":"2.0.1","author":"analogstudio","date":"2026-07-11 08:23:17"},"2.1.0":{"tag":"2.1.0","author":"analogstudio","date":"2026-07-22 01:57:12"},"2.1.1":{"tag":"2.1.1","author":"analogstudio","date":"2026-07-26 14:17:29"},"2.1.2":{"tag":"2.1.2","author":"analogstudio","date":"2026-08-01 04:53:41"},"2.1.3":{"tag":"2.1.3","author":"analogstudio","date":"2026-08-01 05:17:32"}},"upgrade_notice":[],"ratings":{"1":0,"2":0,"3":0,"4":0,"5":3},"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":2564063,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":2564061,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256}},"assets_banners":{"banner-1544x500.jpg":{"filename":"banner-1544x500.jpg","revision":2564060,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.jpg":{"filename":"banner-772x250.jpg","revision":2564058,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3630628,"resolution":false,"location":"assets","locale":"","contents":"{\"landingPage\":\"\\\/wp-admin\\\/plugins.php\",\"preferredVersions\":{\"php\":\"8.1\",\"wp\":\"latest\"},\"phpExtensionBundles\":[\"kitchen-sink\"],\"features\":{\"networking\":true},\"steps\":[{\"step\":\"installPlugin\",\"options\":{\"activate\":true},\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"still-be-image-quality-control\"}},{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"}]}"}},"all_blocks":[],"tagged_versions":["0.10.0","0.10.1","0.10.2","0.10.3","0.10.4","0.10.5","0.10.6","0.10.7","0.10.8","0.10.9","0.5.3","0.6.0","0.6.1","0.7.3","0.7.4","0.7.5","0.8.0","0.8.1","0.9.0","0.9.1","1.0.0","1.1.0","1.1.1","1.1.2","1.2.0","1.2.1","1.2.2","1.2.3","1.2.4","1.3.0","1.4.1","1.5.0","1.5.1","1.5.2","1.6.0","1.7.0","1.7.1","1.7.3","1.7.4","2.0.0","2.0.1","2.1.0","2.1.1","2.1.2","2.1.3"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":2669109,"resolution":"1","location":"assets","locale":"","width":1506,"height":1281},"screenshot-2.png":{"filename":"screenshot-2.png","revision":2669109,"resolution":"2","location":"assets","locale":"","width":1508,"height":1851},"screenshot-3.png":{"filename":"screenshot-3.png","revision":2669109,"resolution":"3","location":"assets","locale":"","width":1501,"height":2194},"screenshot-4.png":{"filename":"screenshot-4.png","revision":2669109,"resolution":"4","location":"assets","locale":"","width":1503,"height":1247},"screenshot-5.png":{"filename":"screenshot-5.png","revision":2585362,"resolution":"5","location":"assets","locale":"","width":537,"height":420}},"screenshots":{"1":"Quality Level Table","2":"Test Quality Level","3":"Options","4":"Recompress the Uploaded Images","5":"Generate WebP Image Automatically"}},"plugin_section":[],"plugin_tags":[569,194661,133,1452,15376],"plugin_category":[50],"plugin_contributors":[183732],"plugin_business_model":[],"class_list":["post-142511","plugin","type-plugin","status-publish","hentry","plugin_tags-automation","plugin_tags-avif","plugin_tags-image","plugin_tags-optimize","plugin_tags-webp","plugin_category-media","plugin_contributors-analogstudio","plugin_committers-analogstudio"],"banners":{"banner":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/banner-772x250.jpg?rev=2564058","banner_2x":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/banner-1544x500.jpg?rev=2564060","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/icon-128x128.png?rev=2564063","icon_2x":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/icon-256x256.png?rev=2564061","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/screenshot-1.png?rev=2669109","caption":"Quality Level Table"},{"src":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/screenshot-2.png?rev=2669109","caption":"Test Quality Level"},{"src":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/screenshot-3.png?rev=2669109","caption":"Options"},{"src":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/screenshot-4.png?rev=2669109","caption":"Recompress the Uploaded Images"},{"src":"https:\/\/ps.w.org\/still-be-image-quality-control\/assets\/screenshot-5.png?rev=2585362","caption":"Generate WebP Image Automatically"}],"raw_content":"<!--section=description-->\n<p>WordPress creates many image sizes when you upload a photo. This plugin tunes each size to a suitable quality level so pages load faster, while keeping the pictures looking good.\nIt works with sensible defaults as soon as you install and activate it. You do not need a long setup to get started.<\/p>\n\n<h3>Runs entirely on your server<\/h3>\n\n<p>Processing stays on your own hosting. There are no cloud conversion fees, usage credits, or third-party watermarks.\nWhen images are rebuilt, the plugin always starts from your original upload. Even if you change settings and regenerate again and again, quality does not degrade across generations (generational degradation).\nThat helps both cost and long-term image quality.<\/p>\n\n<h3>Automatic WebP and AVIF<\/h3>\n\n<p>WebP and AVIF are next-generation formats that keep high image quality at smaller file sizes.\nOn compatible servers, the plugin builds those versions and serves them to browsers that support them \u2014 without rewriting image URLs in your content.<\/p>\n\n<h3>Adjust settings yourself (optional)<\/h3>\n\n<p>You can leave the defaults as they are, or adjust compression yourself for each size and format (JPEG, PNG, WebP, and AVIF).\nThis is especially useful on WooCommerce and other product sites, where product thumbnails can be lighter for fast catalog pages while larger product photos stay sharper for detail views.\nThere is also an optional quality test screen if you want to compare settings with your own eyes.<\/p>\n\n<h3>Automatic optimization (optional, beta)<\/h3>\n\n<p>After upload, the plugin can keep working in the background to find a smaller file that still looks close to the original.\nA second check helps avoid images that look too blocky or soft.\nProgress and size savings are recorded per image.<\/p>\n\n<h3>Protecting your privacy<\/h3>\n\n<p>Uploaded photos often contain EXIF metadata \u2014 for example GPS location, camera model, or the time the shot was taken.\nBy default, the plugin removes EXIF data when images are processed, which helps protect visitors' and photographers' privacy.\nYou can turn this off in the settings if you need to keep EXIF.<\/p>\n\n<h3>More options<\/h3>\n\n<ul>\n<li>Guarantee a Secure Filename (Deny a multibyte filename)<\/li>\n<li>Autoset Alt from Exif (only JPEG)<\/li>\n<li>Add a Quality Level Suffix<\/li>\n<li>Enable Interlace\/Progressive<\/li>\n<li>Enable Index Color (PNG8)<\/li>\n<li>Optimize \"srcset\" Attribute<\/li>\n<li>Force Adding the Query String for Image Cache Clear<\/li>\n<li>Delete Original Large Images *<\/li>\n<\/ul>\n\n<p>&#042; Available in version 2.0 and later.<\/p>\n\n<h3>Admin tools<\/h3>\n\n<ul>\n<li>Add custom image sizes<\/li>\n<li>Change the big image threshold<\/li>\n<li>Run re-compression<\/li>\n<li>Auto re-compression using WP-Cron<\/li>\n<\/ul>\n\n<h3>How to use<\/h3>\n\n<p>Just install and activate. Sensible defaults start optimizing new uploads right away, including WebP and AVIF when your server supports them.<\/p>\n\n<ol>\n<li>Install<\/li>\n<li>Activate<\/li>\n<li>Change settings later if you want finer control<\/li>\n<li>Recompress existing images if you want those settings applied to files already on the site<\/li>\n<\/ol>\n\n<p>Be sure to make a backup before recompressing.<\/p>\n\n<h4>Open the settings<\/h4>\n\n<p>In the WordPress admin, go to Settings \u2192 Image Qualities.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Enter \"Image Quality Control\" in the plugin search field in your admin screen.<\/li>\n<li>Once you find this plugin, click \"Install Now\" to install.<br \/>\n(Alternative) Upload \"stillbe-image-quality-control.zip\" directly to your Plugins -&gt; Add New in your admin screen.<br \/>\n(Alternative) Upload an unzipped \"stillbe-image-quality-control\" directory under the \"\/wp-content\/plugins\" directory.<\/li>\n<li>Activate the plugin through the Plugins menu in WordPress.<\/li>\n<li>Leave image optimization to this plugin. Let's enjoy WordPress!!<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"do%20i%20need%20a%20cloud%20service%20or%20paid%20credits%3F\"><h3>Do I need a cloud service or paid credits?<\/h3><\/dt>\n<dd><p>No.\nAll processing runs on your own server. There are no conversion fees, usage credits, or third-party watermarks.<\/p><\/dd>\n<dt id=\"will%20it%20optimize%20images%20i%20already%20uploaded%3F\"><h3>Will it optimize images I already uploaded?<\/h3><\/dt>\n<dd><p>New uploads are optimized with the current settings as soon as the plugin is active.\nImages already in the Media Library keep their current files until you recompress them (or enable automatic re-compression).\nRecompression is also the way to generate WebP \/ AVIF for images that were uploaded before those options were enabled.<\/p><\/dd>\n<dt id=\"should%20i%20recompress%20it%3F\"><h3>Should I recompress it?<\/h3><\/dt>\n<dd><p>Not required for day-to-day use.\nRecompress when you want existing uploads to follow new quality settings, or when you want WebP \/ AVIF created for images that do not have them yet.<\/p><\/dd>\n<dt id=\"what%20is%20the%20difference%20between%20recompression%20and%20automatic%20optimization%3F\"><h3>What is the difference between recompression and automatic optimization?<\/h3><\/dt>\n<dd><p>Recompression rebuilds resized images (and optional WebP \/ AVIF) from the original upload using your quality settings.\nAutomatic optimization is an optional background process that further lowers quality step by step while watching visual quality (SSIM), and it can raise the level again if images look too blocky or soft.\nYou can use recompression alone. Automatic optimization is disabled by default.<\/p><\/dd>\n<dt id=\"what%20is%20automatic%20optimization%3F\"><h3>What is automatic optimization?<\/h3><\/dt>\n<dd><p>It lowers the quality level of each resized image until the target visual quality is reached, using SSIM (structural similarity) as an objective quality metric.\nWhen SSIM alone might allow too much compression, a secondary check based on edge detection looks for block noise and similar artifacts and raises the quality level if needed.\nThis process runs automatically in the background, one image after another. (Disabled by default.)<\/p><\/dd>\n<dt id=\"does%20automatic%20optimization%20support%20webp%20uploads%3F\"><h3>Does automatic optimization support WebP uploads?<\/h3><\/dt>\n<dd><p>Yes. When you upload a WebP image, it can be optimized as well.<\/p><\/dd>\n<dt id=\"what%20do%20i%20need%20on%20the%20server%20for%20webp%20and%20avif%3F\"><h3>What do I need on the server for WebP and AVIF?<\/h3><\/dt>\n<dd><p>WebP can be generated when your PHP image library supports it (Imagick and\/or GD with WebP), or when the optional cwebp-based extension is available.\nAVIF needs a library that can encode AVIF (Imagick with AVIF support, and\/or GD with <code>imageavif<\/code>).\nThe plugin settings screen shows whether WebP and AVIF are available on your server.\nJPEG and PNG compression work with the usual WordPress image editors even when next-gen formats are unavailable.<\/p><\/dd>\n<dt id=\"do%20i%20need%20to%20rewrite%20image%20urls%20for%20webp%20or%20avif%3F\"><h3>Do I need to rewrite image URLs for WebP or AVIF?<\/h3><\/dt>\n<dd><p>No.\nContent can keep the usual JPEG \/ PNG URLs.\nOn compatible servers, the plugin places an <code>.htaccess<\/code> file under <code>\/wp-content\/uploads<\/code> so browsers that send <code>Accept: image\/avif<\/code> or <code>image\/webp<\/code> receive those files when they exist. AVIF is preferred over WebP when both are available.<\/p><\/dd>\n<dt id=\"will%20webp%20%2F%20avif%20delivery%20work%20with%20a%20cdn%20or%20nginx%3F\"><h3>Will WebP \/ AVIF delivery work with a CDN or nginx?<\/h3><\/dt>\n<dd><p>On typical WordPress hosting, Apache serves uploads and honors <code>.htaccess<\/code>, so you usually do not need extra setup. Shared hosting almost always falls into this case.\nMany setups that put nginx in front as a reverse proxy still proxy static uploads to Apache, so the same <code>.htaccess<\/code> rules often continue to work.\nYou mainly need custom rules if the site is pure nginx (no Apache <code>.htaccess<\/code>) or if a CDN caches the JPEG \/ PNG response without respecting the <code>Accept<\/code> \/ <code>Vary<\/code> headers. In those environments, configure equivalent content negotiation on the CDN or web server.<\/p><\/dd>\n<dt id=\"can%20i%20use%20this%20with%20woocommerce%3F\"><h3>Can I use this with WooCommerce?<\/h3><\/dt>\n<dd><p>Yes.\nYou can set different quality levels per image size, so catalog thumbnails can stay light while larger product images remain sharper.<\/p><\/dd>\n<dt id=\"the%20image%20sharpness%20of%20webp%20is%20not%20good.\"><h3>The image sharpness of WebP is not good.<\/h3><\/dt>\n<dd><p>Raise the quality level of WebP.\nTest the file size and image quality to decide the quality level.<\/p>\n\n<p>If WebP still looks soft at a practical file size, enable AVIF as well when your server supports it.\nAVIF often keeps finer detail at a smaller size than WebP, and supporting browsers will receive AVIF preferentially.<\/p><\/dd>\n<dt id=\"does%20the%20image%20lose%20quality%20if%20i%20change%20the%20quality%20level%20many%20times%20and%20recompress%20it%3F\"><h3>Does the image lose quality if I change the quality level many times and recompress it?<\/h3><\/dt>\n<dd><p>No.\nWhen recompressing, the plugin resizes and compresses from the original upload, so quality does not degrade across generations.<\/p><\/dd>\n<dt id=\"can%20exif%20data%20be%20deleted%20individually%20for%20each%20item%3F\"><h3>Can EXIF data be deleted individually for each item?<\/h3><\/dt>\n<dd><p>No.\nYou can only choose to strip all EXIF data or keep it.<\/p><\/dd>\n<dt id=\"can%20i%20delete%20exif%20from%20uploaded%20images%3F\"><h3>Can I delete EXIF from uploaded images?<\/h3><\/dt>\n<dd><p>Yes.\nRecompression applies the current EXIF setting.\nEXIF that has already been removed cannot be restored.<\/p><\/dd>\n<dt id=\"does%20disabling%20the%20plugin%20stop%20the%20automatic%20delivery%20of%20webp%20%2F%20avif%3F\"><h3>Does disabling the plugin stop the automatic delivery of WebP \/ AVIF?<\/h3><\/dt>\n<dd><p>Yes. On deactivation, the plugin removes its <code>.htaccess<\/code> rules.\nIf you keep an equivalent <code>.htaccess<\/code> in <code>\/wp-content\/uploads<\/code>, delivery can continue after the plugin is deactivated.<\/p><\/dd>\n<dt id=\"do%20this%20plugin%27s%20settings%20override%20the%20%27jpeg_quality%27%20filter%3F\"><h3>Do this plugin's settings override the 'jpeg_quality' filter?<\/h3><\/dt>\n<dd><p>Yes. The quality levels set in this plugin take precedence over WordPress's <code>jpeg_quality<\/code> filter.<\/p><\/dd>\n<dt id=\"how%20do%20i%20uninstall%20the%20plugin%3F\"><h3>How do I uninstall the plugin?<\/h3><\/dt>\n<dd><p>Deactivate it, then delete it from the Plugins screen.\nDeactivation removes the <code>.htaccess<\/code> rules used for WebP \/ AVIF delivery. Optimized image files remain in your uploads folder.\nPlugin settings stored in the database are not removed automatically; use Reset Settings before uninstalling if you want to clear them.<\/p><\/dd>\n<dt id=\"recompressing%20with%20a%20higher%20quality%20does%20not%20improve%20the%20image.\"><h3>Recompressing with a higher quality does not improve the image.<\/h3><\/dt>\n<dd><p>Your browser may still be showing a cached file. Try a hard refresh or clear the browser cache.\nThis plugin can also append a cache-clearing query string when an image file changes.\nIf the original upload itself is low quality, recompression cannot make it sharper than that original.<\/p><\/dd>\n<dt id=\"what%20does%20%22delete%20original%20large%20images%22%20do%3F\"><h3>What does \"Delete Original Large Images\" do?<\/h3><\/dt>\n<dd><p>When a very large photo (for example from a smartphone) is uploaded and WordPress creates a <code>-scaled<\/code> image, this option deletes the unused original full-size file.\nThat original is not referenced anywhere, so removing it helps free server storage.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>2.1.3<\/h4>\n\n<p>Changed EXIF stripping so file permissions are derived from the parent directory.\nThis corrects incorrect permissions on recompression when an older process had left the wrong mode on the image file.<\/p>\n\n<h4>2.1.2<\/h4>\n\n<p>Fixed a bug where file permissions were changed when stripping EXIF with the GD editor.<\/p>\n\n<p>Changed the quality test to allow setting the AVIF quality level to 100.<\/p>\n\n<p>Added a setting to select the preferred image editor.<\/p>\n\n<h4>2.1.1<\/h4>\n\n<p>Improved Imagick encoding options for WebP and AVIF.<\/p>\n\n<p>Limited the AVIF quality level table to 1-99 so that quality 100 remains reserved for lossless encoding.<\/p>\n\n<p>Fixed some small bugs.<\/p>\n\n<h4>2.1.0<\/h4>\n\n<p>Added support for generating AVIF alternative images.<\/p>\n\n<p>Added a secondary check to detect quality degradation caused by block noise or other artifacts, preventing the optimization process from lowering the quality level too much.<\/p>\n\n<p>Improved the settings for automatic optimization to provide better results.<\/p>\n\n<h4>2.0.1<\/h4>\n\n<p>Added a setting to limit the number of concurrent automatic optimization jobs.<\/p>\n\n<p>Fixed bugs related to the automatic optimization process.<\/p>\n\n<p>Fixed a bug where SSIM values were not displayed.<\/p>\n\n<h4>2.0.0<\/h4>\n\n<p>Added automatic optimization process using SSIM (structural similarity index measure) index. (Beta function, disabled by default)\nThe optimization runs in the background via WP-Cron, searching for the lowest quality level that meets the SSIM target for each size (the quality level table is used as the ceiling). The target level (Efficiency \/ Balance \/ Quality) can be selected in the settings.\nConcurrent auto-optimize jobs are limited (default: 2; configurable in Advanced Settings 2 \/ filter still-be\/image-quality-control\/auto-optimize\/concurrency).\nAfter re-compression, delivery WebP files are kept by default until automatic optimization replaces them (optional immediate purge in Advanced Settings 2).\nProgress and total size reduction (percentage and bytes saved) are stored in attachment metadata and shown in the Media Library list view.\nMigrated admin operations from admin-ajax.php to the WordPress REST API (namespace stillbe-iqc\/v1) using wp.apiFetch.<\/p>\n\n<p>Changed the minimum required WordPress version to 5.8.\nAdded capability checks to all Ajax endpoints.\nFixed a bug that the progressive JPEG toggle setting was not applied.\nChanged the safe filename conversion to be applied before saving the uploaded file.\nChanged the EXIF stripping to parse JPEG segments correctly.\nImproved the cache clear query string to avoid filesystem access on every page load.<\/p>\n\n<p>Please use version 1.7.4 for the stable release without automatic optimization.<\/p>\n\n<h4>1.7.5<\/h4>\n\n<p>Fixed required versions of extended plugin.<\/p>\n\n<h4>1.7.4<\/h4>\n\n<p>Fixed Fatal Error in GD environment.<\/p>\n\n<h4>1.7.3<\/h4>\n\n<p>Checked that it works with WordPress 6.8.<\/p>\n\n<h4>1.7.2<\/h4>\n\n<p>Checked that it works with WordPress 6.7.<\/p>\n\n<h4>1.7.1<\/h4>\n\n<p>Checked that it works with WordPress 6.4.<\/p>\n\n<h4>1.7.0<\/h4>\n\n<p>Checked that it works with WordPress 6.3.<\/p>\n\n<h4>1.6.0<\/h4>\n\n<p>Changed Requests_Transport_fsockopen class to WpOrg\\Requests\\Transport\\Fsockopen class.<\/p>\n\n<h4>1.5.2<\/h4>\n\n<p>Fixed a bug that caused batch recompression to loop without finishing.<\/p>\n\n<h4>1.5.1<\/h4>\n\n<p>Fixed a bug that failed to set image quality when the size name was changed after an image size was added.\nChanged the specification to display only the number of files instead of displaying the attachment id of the targets in the tab of recompression.<\/p>\n\n<p>Fixed other minor bugs.<\/p>\n\n<p>Checked that it works with WordPress 6.2.<\/p>\n\n<h4>1.5.0<\/h4>\n\n<p>Fixed an error when an empty file is passed during EXIF removal.<\/p>\n\n<p>Checked that it works with WordPress 6.1.<\/p>\n\n<h4>1.4.0<\/h4>\n\n<p>Added process to strip EXIF data embeded in images.<\/p>\n\n<h4>1.3.0<\/h4>\n\n<p>Fixed an error that occurred with PHP 7.2 and older.\nChecked that it works with WordPress 6.0.<\/p>\n\n<h4>1.2.4<\/h4>\n\n<p>Fix an issue where resized images were not generated when uploading WebP that WebP was not automatically generated to replace images in conventional format.<\/p>\n\n<h4>1.2.3<\/h4>\n\n<p>Fix the text domain in some translation functions.<\/p>\n\n<h4>1.2.2<\/h4>\n\n<p>Change translation function to wp.i18n.\nAdjust the tab control of the setting screen.<\/p>\n\n<h4>1.2.1<\/h4>\n\n<p>Add an option to optimize delay by WP-Cron. cURL in version older than 7.32.0, decimal values cannot be used for timeout.\nChang the method of obtaining the modification date and time of the query string to clear the image cache.\nFix a bug in Imagick that WebP mime-type was not detected correctly.\nFix a bug in the quality test that the quality level of the original image might not be set to the set level.<\/p>\n\n<h4>1.2.0<\/h4>\n\n<p>Add an option to add a query string to clear the image cache.\nChanged the interlace flag to be set separately for JPEG and PNG.<\/p>\n\n<h4>1.1,2<\/h4>\n\n<p>Add setting of target conditions for batch conversion.\nChecked that it works with WordPress 5.9.<\/p>\n\n<h4>1.1.1<\/h4>\n\n<p>Fix a bug that toggle options could not be displayed when loading by the setting page opening other than the test image tab in the quality level test.\nGD changed the initial value of PNG8 enablement to 'false' because transparent colors are not preserved when converted to PNG8 at sites that use the GD library.<\/p>\n\n<h4>1.1.0<\/h4>\n\n<p>Supports PNG8. Supports changing toggle options in quality level testing.<\/p>\n\n<h4>1.0.0<\/h4>\n\n<p>Official Release\nChange of the quality levels can be set according to the size of the original image.<\/p>\n\n<h4>0.10.9<\/h4>\n\n<p>Fix a bug that the setting value of this plugin is not set except for 'medium' size when the quality level is set by 'jpeg_quality' hook.<\/p>\n\n<h4>0.10.8<\/h4>\n\n<p>Fix a bug that the default quality setting values are not used when the quality setting values are not set.\nAdd the function to display the saved setting values.<\/p>\n\n<h4>0.10.7<\/h4>\n\n<p>Increase the priority of the quality level setting for this plugin.<\/p>\n\n<h4>0.10.6<\/h4>\n\n<p>Fix the quality levels in compression informations table.<\/p>\n\n<h4>0.10.5<\/h4>\n\n<p>Add the quality level table for site icon.\nAdd single compression button to the Media Library page (list view).\nUpdate translations.<\/p>\n\n<h4>0.10.4<\/h4>\n\n<p>Add compression informations to the Media Library page (list view).\nFix a bug that occasionally prevented setting the site icon.<\/p>\n\n<h4>0.10.3<\/h4>\n\n<p>Show the default value for toggle settings.<\/p>\n\n<h4>0.10.2<\/h4>\n\n<p>Fix because the deletion of 0.10.1 was not successful.<\/p>\n\n<h4>0.10.1<\/h4>\n\n<p>Delete the old files that remained when dividing into folders under \/includes.<\/p>\n\n<h4>0.10.0<\/h4>\n\n<p>Tab the setting screen.\nFix some bugs.<\/p>\n\n<h4>0.9.1<\/h4>\n\n<p>Modulated the processes for extension plugin.<\/p>\n\n<h4>0.9.0<\/h4>\n\n<p>Fix some bugs.\nAdd the funcitions of extension plugin.<\/p>\n\n<h4>0.8.1<\/h4>\n\n<p>Fix a bug that the quality level cannot be set in the quality test.\nAdd the function to regenerate only one image.<\/p>\n\n<h4>0.8.0<\/h4>\n\n<p>Add the bellow functions;\n1. Add Custom Image Sizes\n2. Optimize \"srcset\" Attribute\n3. Big Image Threshold\n4. Images are automatically regenerated using WP-Cron<\/p>\n\n<h4>0.7.5<\/h4>\n\n<p>Compatible with WordPress 5.8.1.\nChanged the default values.<\/p>\n\n<h4>0.7.4<\/h4>\n\n<p>Fix a bug that the setting values cannot reset.<\/p>\n\n<h4>0.7.3<\/h4>\n\n<p>Fix some bugs.<\/p>\n\n<h4>0.7.2<\/h4>\n\n<p>Changed the test image preview to an image size that takes into account the device pixel ratio.<\/p>\n\n<h4>0.7.1<\/h4>\n\n<p>Add the function to test quality level.<\/p>\n\n<h4>0.6.1<\/h4>\n\n<p>Update the description on the setting screen.<\/p>\n\n<h4>0.6.0<\/h4>\n\n<p>Compatible with WordPress 5.8. Fixed a bug that the original image WebP was not generated.\nUpdated to interrupt the recompression process.<\/p>\n\n<h4>0.5.3<\/h4>\n\n<p>First Release on The WordPress Plugin Directory<\/p>\n\n<h4>0.5.0<\/h4>\n\n<p>Organized items on the setting page and added explanations. Changed the settings to apply.<\/p>\n\n<h4>0.4.0<\/h4>\n\n<p>Add a Setting Page &amp; Selected the Editor Changed to Prioritize WebP-enabled Library.<\/p>\n\n<h4>0.3.1<\/h4>\n\n<p>When Deleting an Attachment, Delete WebP at the Same Time.<\/p>\n\n<h4>0.3.0<\/h4>\n\n<p>Changed WebP Creation Method to 'cwebp' Utility.<\/p>\n\n<h4>0.2.0<\/h4>\n\n<p>Add Classes that extends the Core Image Editor and Set the Compression Quality when Creating Resized Images with GD \/ Imagick.<\/p>\n\n<h4>0.1.0<\/h4>\n\n<p>Overwrites the All Resized Images with GD functions after 'wp_generate_attachment_metadata' Hook.<\/p>","raw_excerpt":"Keep image quality while making files smaller for faster pages - just install and you&#039;re set, with automatic WebP and AVIF.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/142511","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=142511"}],"author":[{"embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/analogstudio"}],"wp:attachment":[{"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=142511"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=142511"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=142511"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=142511"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=142511"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/id.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=142511"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}