Reduce image file sizes and improve performance for images within WordPress including NextGEN Gallery. Uses jpegtran, optipng, and gifsicle.
|Author:||Shane Bishop (profile at wordpress.org)|
|WordPress version required:||4.6|
|WordPress version tested:||4.9.5|
|Added to WordPress repository:||07-06-2012|
|Total downloads:||8 528 825|
|Active installs:||600 000+|
Click to start download
Plugin settings page.
Additional optimize column added to media listing. You can see your savings, manually optimize individual images, and restore originals (converted only).
Bulk optimization page. You can optimize all your images at once and resume a previous bulk optimization. This is very useful for existing blogs that have lots of images.
- Upload the “ewww-image-optimizer” plugin to your /wp-content/plugins/ directory.
- Activate the plugin through the ‘Plugins’ menu in WordPress.
- Ensure jpegtran, optipng, pngout and gifsicle are installed on your Linux server (basic installation instructions are below if they are not). You will receive a warning when you activate the plugin if they are not present. This message will go away once you have them installed.
- The plugin will attempt to install jpegtran, optipng, and gifsicle automatically for you. This requires that the wp-content folder is writable by the user running the web server.
- If the automatic install did not work, find the appropriate binaries for your system in the ewww-image-optimizer plugin folder, copy them to wp-content/ewww/ and remove the OS “tag” (like -linux or -fbsd). No renaming is necessary on Windows, just copy the .exe files to the wp-content/ewww folder. IMPORTANT: Do not symlink or modify the binaries in any way, or they will not pass the security checks. If you transfer files via FTP, be sure to transfer in binary mode, not ascii or text.
- If the binaries don’t run locally, you can sign up for the EWWW IO cloud service to run them via our optimization servers: https://ewww.io/plans/
- Recommended Visit the settings page to enable/disable specific tools and turn on advanced optimization features.
If these steps do not work, additional documentation is available at https://docs.ewww.io. If you need further assistance using the plugin, please visit our Support Page. The forums are community supported only.
To find out if your webhost works with the EWWW Image Optimizer, you can check the official list.
Google Pagespeed says my images need compressing or resizing, but I already optimized all my images. What do I do?
Try this for starters: https://docs.ewww.io/article/5-pagespeed-says-my-images-need-more-work
The plugin complains that I’m missing something, what do I do?
This article will walk you through installing the required tools (and the alternatives if installation does not work): https://docs.ewww.io/article/6-the-plugin-says-i-m-missing-something
Does the plugin replace existing images?
Yes, but only if the optimized version is smaller. The plugin should NEVER create a larger image.
Can I resize my images with this plugin?
Yes, you can, set it up on the Resize tab.
Can I lower the compression setting for JPGs to save more space?
The lossy JPG optimization using the API will determine the ideal quality setting and give you the best results, but you can also adjust the default quality for conversion and resizing. More information: https://docs.ewww.io/article/12-jpq-quality-and-wordpress
The bulk optimizer doesn’t seem to be working, what can I do?
What are the supported operating systems?
I’ve tested it on Windows (with Apache), Linux, Mac OSX, FreeBSD 9, and Solaris (v10). The cloud API will work on any OS.
How are JPGs optimized?
Lossless optimization is done with the command jpegtran -copy all -optimize -progressive -outfile optimized-file original-file. Optionally, the -copy switch gets the ‘none’ parameter if you choose to strip metadata from your JPGs on the options page.
How are PNGs optimized?
There are three parts (and all are optional). First, using the command pngquant original-file, then using the commands pngout-static -s2 original-file and optipng -o2 original-file. You can adjust the optimization levels for both tools on the settings page. Optipng is an automated derivative of pngcrush, which is another widely used png optimization utility. EWWW I.O. Cloud uses TinyPNG for 10% better lossy compression than standalone pngquant.
How are GIFs optimized?
Using the command gifsicle -b -O3 –careful original file. This is particularly useful for animated GIFs, and can also streamline your color palette. That said, if your GIF is not animated, you should strongly consider converting it to a PNG. PNG files are almost always smaller, they just don’t do animations. The following command would do this for you on a Linux system with imagemagick: convert somefile.gif somefile.png
I want to know more about image optimization, and why you chose these options/tools.
That’s not a question, but since I made it up, I’ll answer it. See these resources:
- Feature requests can be submitted via https://ewww.io/contact-us/ and commented on here: https://trello.com/b/Fp81dWof/ewww-image-optimizer
- If you would like to help translate this plugin in your language, get started here: https://translate.wordpress.org/projects/wp-plugins/ewww-image-optimizer/
- fixed: infinite loop when removing invalid API key
- fixed: img elements with incorrect attachment ID being replaced with wrong image src
- fixed: ExactDN CSS and JS parsing incompatible with Autoptimize
- added: detect WP Fastest Cache WebP rewrite rules
- added: notice if WebP conversion enabled but mod_rewrite or mod_headers is missing
- added: better debugging when background/async mode is blocked
- changed: CSS/JS files are filtered pre-emptively by ExactDN to avoid quirks with emoji scripts
- fixed: warning during wp_cron for undefined constant
- fixed: invalid or expired keys would still attempt optimization
- fixed: WebP files are orphaned when using Media File Renamer
- deprecated: PHP 5.3 will no longer be supported in 4.2
- deprecated: PHP 5.4 support will be removed by July 2018
- deprecated: PHP 5.5 support will be removed by October 2018
- added: reduce ExactDN load time by suppressing db queries with EXACTDN_PREVENT_DB_QUERIES
- added: $fullsize indicator added to pre/post optimization hooks, props Schweinepriester
- fixed: missing www preventing rewrites for ExactDN
- fixed: Alt WebP compatibility with Tatsu page builder
- fixed: relative path support not working properly for Pantheon users
- fixed: missing directories prevent optimization of S3 files
- SECURITY: gifsicle and optipng have been updated to address security flaws
- added: full compatibility with Image Watermark plugin
- added: dummy images for Essential Grid and Layer Slider whitelisted with ExactDN
- added: compatibility with Visual Composer and Essential Grid async/AJAX loaders
- added: compatibility with Media File Renamer
- changed: ExactDN rewrites all wp-content and wp-includes urls by default
- changed: mime-type detection function does not rely on fileinfo extension anymore
- changed: Solaris/SunOS binary builds use OpenIndiana 2017.10, let me know if they break
- fixed: wp-emoji script not rewritten by EXACTDN_ALL_THE_THINGS
- fixed: resize detection script throws error when admin bar is hidden
- fixed: warnings when WP Offload S3 set to delete local files, props ianmjones
- updated: pngquant version 2.11.7
- changed: dummy images have no args appended with exactdn except for ssl flag
- fixed: resize_detection.js being combined with other scripts by Autoptimize
- fixed: retina optimization not deferred in async mode
- fixed: PDF files could trigger license exceeded message
- fixed: binary detection not fully functional with MacOS and PHP 7.2
- fixed: compatibility with Regenerate Thumbnails version 3
- added: enable lossy compression with ExactDN: https://docs.ewww.io/article/47-getting-more-from-exactdn
- added: CSS/JS minification with ExactDN, see https://docs.ewww.io/article/47-getting-more-from-exactdn
- added: disable WebP for specific files with ewww_image_optimizer_bypass_webp filter
- added: ExactDN obeys focus point from Theia Smart Thumbnails plugin
- added: admin-ajax requests for eddvbugm loader work with ExactDN
- fixed: multisite settings would not save in certain circumstances
- fixed: compression levels reset for API users on multisite after toggling single-site override on and off
- fixed: media library items with non-local images rewritten incorrectly by ExactDN
- fixed: restoring images throws errors on PHP 7.1
- fixed: has_cap with invalid argument not recognizing utf8-mb4 v5.2
- fixed: ExactDN domain validation failing on length check for some domains
- updated: PEL for better EXIF preservation
- added: support for additional ExactDN root domains
- added: button to remove WebP rewrite rules
- added: informational notice on thumbnail rebuild pages of how the plugins interact
- changed: WebP rewrite rules removed automatically when ExactDN is enabled, use Alt WebP instead
- changed: ExactDN now removes metadata if option is enabled
- fixed: multisite settings set to defaults when single-site resize settings are submitted
- fixed: WooCommerce images still not working with Alt WebP in all cases
- fixed: ob_clean() breaks AJAX actions when there is no buffer to clean
- fixed: notice on NextCellent gallery management pages
- fixed: missing JS for AJAX actions in NextCellent
- fixed: ExactDN option not disabled when verification fails too many times
- fixed: theme scanner sometimes skipped images on PHP 5.3
- fixed: invalid (float) width parameters for srcset attributes
- fixed: Jetpack lightbox and carousel were not fully working with Alt WebP
- fixed: WooCommerce lightbox and gallery not working with Alt WebP
- fixed: incorrect message about scanning scope when selecting images from media library for bulk optimization
- security: fixed wildcard LIKE queries to allow proper escaping
- added: ExactDN with CDN and automatic image resizing
- added: image resize detection for admin users
- changed: WP core, theme, and plugin images are excluded from lossy optimization
- fixed: files fetched from S3 not detected by PHP in some cases
- fixed: option override conflict preventing webp conversion
- fixed: Alt WebP breaks Draw Attention image maps
- fixed: customized WP_Background_Process class conflicts with other plugins using the same class
- fixed: image deletion could cause deletion of images on source site after cloning database
- fixed: WebP .htaccess rules using REQUEST_FILENAME instead of REQUEST_URI does not work on some servers
- fixed: per-site resize settings hidden when API is active network-wide
- fixed: network-wide settings not saving properly
- fixed: notice of undefined index with some configurations of the Shield security plugin
- deprecated: PHP 5.3 support will be removed by March 2018
Please refer to the separate changelog.txt file.