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.9|
|WordPress version tested:||4.9.8|
|Added to WordPress repository:||07-06-2012|
|Total downloads:||10 440 417|
|Active installs:||700 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.
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?
See https://docs.ewww.io/article/39-bulk-optimizer-failure for full troubleshooting instructions.
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 using the Overrides. Optipng is an automated derivative of pngcrush, which is another widely used png optimization utility.
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/
- added: notice for Pantheon users that an API key is required
- added: ExactDN fully supports protocol-relative urls for non-image resources
- changed: better lazy load support in ExactDN
- fixed: optimization failure produces rename() errors
- fixed: folder scanner ignores files with no extension
- fixed: Alt WebP blocks on Facebook tracking pixel
- fixed: ExactDN srcset functions cause duplicate image requests with zoom=1
- fixed: ExactDN srcset fill adds double arguments to urls
- fixed: srcset fill generates notices with non-numeric widths
- fixed: bulk scanner stuck in resume mode with nothing to do
- fixed: ExactDN srcset fill replaces images with first image on page
- added: preserve animations in GIF images during resize operations
- added: ExactDN will fill in srcset/sizes attributes for all images based on detected width for better mobile support
- added: configuration options in the settings page for several “hidden” ExactDN options
- changed: Alt WebP still depends on jQuery, but jQuery can be loaded in async or defer mode
- changed: Remove Metadata option has been renamed, if you previously had it configured as an override (JPEGTRAN_COPY), please use the new name: EWWW_IMAGE_OPTIMIZER_METADATA_REMOVE
- changed: ExactDN uses premium compression by default
- fixed: regression with ExactDN and max-width style attributes
- fixed: WP esc_url mangles ExactDN urls
- fixed: WebP images missing from S3 when using WP Offload S3
- fixed: PDF uploads with S3 Uploads plugin
- deprecated: PHP 5.5 support will be removed in the next major release (version 4.5)
- removed: PHP 5.4 no longer supported
- changed: prevent dynamic JS/CSS urls within wp-admin/ from being rewritten by ExactDN
- fixed: auto-convert PNG to JPG was running on images with transparency
- fixed: Alt WebP broken on sites that have jquery-migrate disabled
- added: Alt WebP enables instant conversion with ExactDN, no need for bulk optimize
- added: links within settings and other notices for contextual help
- added: auto-convert large PNG images to JPG during upload, define EWWW_IMAGE_OPTIMIZER_DISABLE_AUTOCONVERT to skip
- added: use file modification time to add query strings on JS/CSS files for cache invalidation on ExactDN
- added: use EXACTDN_EXCLUDE in wp-config.php to bypass ExactDN for JS, CSS, etc.
- added: NextGEN image urls properly rewritten for ExactDN
- added: NextGEN dynamic thumbs included during manual/bulk optimization
- added: auto-installer for Cloud plugin when running EWWW IO on a “banned” webhost
- added: detect wordpress.com sites and disable exec function and binaries
- changed: resizing uses the primary media dimensions unless the “other” dimensions are configured
- changed: Resize Other Images removed from GUI, configure via Overrides tab
- changed: filter NextGEN quality to prevent oversized thumbs
- changed: allow crop via filter even when one dimension is the same as the original
- changed: auto-rotate function disabled with EWWW_IMAGE_OPTIMIZER_DISABLE_AUTOROTATE
- changed: one-click copy for debug info, and debug collapsed by default in media library and bulk results
- changed: bulk operations for batches of NextGEN images now use the bulk optimizer page instead of loading inline
- fixed: thumbs not generated during WP/LR Sync
- fixed: uploading images in the Gutenberg editor uses the wrong resize dimensions
- fixed: unique filename function producing names with a hyphen and no digits
- fixed: encoded ampersands within the path portion of a url prevent ExactDN parsing
- fixed: entering a decimal for bulk delay does nothing
- fixed: if urls on a localized WPML domain are using the default domain, ExactDN ignores them
- fixed: toggle for plugin status and bulk status generate admin-ajax.php 403 errors
- fixed: PNGOUT installer confirmation notice was missing
- deprecated: PHP 5.4 support will be removed in the next major release (version 4.4)
Please refer to the separate changelog.txt file.