Reduce image file sizes and improve performance using the Smush.it API within WordPress.
|Author:||WPMU DEV (profile at wordpress.org)|
|WordPress version required:||3.5|
|WordPress version tested:||4.7.1|
|Added to WordPress repository:||05-12-2008|
|Total downloads:||4 619 345|
|Active installs:||600 000+|
Click to start download
Watch as your image library is processed – up to 50 images at a time.
Set automatic smush to resize and optomize every image as it is uploaded.
Smush will find and optimize images for you.
I just finished running Smush and Google Pagespeed still says my images need compressing and resizing. How do I fix it?
This means your images were not properly scaled for where they are being displayed. Scaling images before uploading them can be time consuming but can save space and speedup load time. First, determine what size your image needs to be. You can use the built-in developer tools in Chrome or Firefox to find what height and width your image should be. Once you know how large the image should be, scale your images to the right size.
Tip: you may not be need to scale each image individually. If the images are in your Media Library, you may be able to fix them with a plugin.
Does Smush delete or replace my original full-size images?
Nope. WordPress crops and resizes every image you upload for embedding on your site. By default, Smush only compresses these cropped and resized images, not your original full-size images. To compress your original full-sized images use WP Smush Pro.
What type of file should I use for my images (GIF, PNG, JPG)?
GIF files are large and can’t be optimized much. They should only be used if the image is animated.
PNG is best for computer generated graphics (vectors, logos, fonts, etc.), images with few colors or images with transparency.
JPG should be used for photography or images with a lot of color variation.
I’m a photographer can I keep all my EXIF data?
Yes! EXIF data stores camera settings, focal length, date, time and location information in image files. EXIF data makes image files larger but if you are a photographer you may want to preserve this information. We have included the option to preserve EXIF image data in WP Smush.
I just ran bulk smush and some of my images didn't get compressed?
First, check to see if you're receiving any server errors. If your images seem to be processing correctly check the file size of the images being skipped. Images over 1mb will be skipped. To compress images up to 32mb get WP Smush Pro.
- Show a Smush progress message in Grid view for Auto Smush ( A lot of people reported it as Auto Smush not working, which works in background though )
- Translation domain was incorrect for few strings
- Translation: Load translation domain in main plugin file
- Include image size
medium_largein smush list
- Error: Cannot use string offset as an array
- Error in PNG to JPG conversion ( Pro Feature ), added check for mime_content_type function
- Pro Status not recognised
wp_smush_image, Boolean, Whether to Smush image or not
- Async Optimisation for Auto Smush on upload ( Set WP_SMUSH_ASYNC to false to turn off async optimisation )
- Networkwide settings option in a Multisite
- Double slash in file path causing 403 on some of the sites
- Localisation error reported by @talgat ( Thank You 🙂 )
- Error "No file content sent" with WP 4.6
- PNG to JPEG conversion not working for Multisite
- Stats Calculation, Use custom query to retrieve data
- Fixed warning and notices
- Added check for invalid membership ( Pro Users )
- thumbnails not being converted for PNG to JPEG conversion
- Removed option to convert Transparent PNGs to JPEGs ( Pro Users )
- Fixed: Image resizing not working on image upload
- Fixed: PHP 5.2 compatibility
- Fixed: Conflict with Customizer
- WPML Media Add-on compatibility, you can smush all the images for all the languages at once from Bulk Smush page
- Added PNG to JPG - Lossy Conversion for higher savings ( Pro Feature )
*Fixed: * EXIF: Device details were left out for some images, even when opted for stripping it
- Minor Tweaks on WP Smush Page ( Bulk Smush )
- Stats calculation is more accurate
- Show current image size and image size dimensions in media library after image has been smushed
- JPEG optimisation - higher savings for JPEGs lossy optimisation ( Pro Feature )
- Stats not updated on resizing images
- CSS conflict in Media Library
- Tooltip on image edit page
- Warning and Notices
- Improved stats calculation
- Bulk Smush page optimised for Image heavy sites
- Cleanup on uninstall
- Image Resizing option for Media, NextGen(Pro Only) images
- Total image count on stats page
- Fixed: JS error causing issue with Editor on some installs, plugin conflict with CoursePress plugin, ACF ( Clear All Caches after plugin upgrade, Cloudflare as well )
- Fixed: ReSmush count for bulk smushing
- Fixed: Smush settings accessibility for Screen reader/Keyboard
- Fixed: WP Admin loading slow ( Load smush stats on required admin pages only )
- New: Option to resmush image if settings are changed after optimising images
- New: Added an option to preserve EXIF
- New: Remove Smush meta on image regeneration, This allows user to manually smush them later, if auto smush is off ( WP Image Editor support )
- New: Manual Image restore option for Media Library and NextGen Gallery, if "Backup Original Images" was kept on while smushing ( Pro Only )
- New: Delete Backup Files (Pro Only) on attachment deletion
- Updated: Upfront Integration
- Fixed: jQuery tooltip conflict
- Code Optimisation, Updated Settings page UI
- Fixed: WP Media Folder Plugin compatibility
- Fixed: Warning on Plugins Page
- Updated: Settings Page styling
- Fixed: Preserve file permission after smushing ( Fix for Images disappearing in Media library on some hosts )
- Fixed: Styles plugin compatibility
- Fixed: Append URL params considering the existing arguments ( WPML Compatibility )
- Fixed: Warning: For settings link in Network admin, Warning: https://goo.gl/HAfhaF ( Thank you @Maks3w for suggestions )
- Fixed: Fatal error if both pro version and free version are activated
- Fixed: NextGen-Smush conflict on plugin activation on a fresh install
- Fixed: Compatibility with WPMU DEV Dashboard plugin v4.0, was not detecting pro status
- Fixed: Important fix for transient issue leading to multiple api requests
- Fixed: Workaround for terrible bug in W3TC file based object caching
- Fixed: Untranslatable strings in settings
- Fixed: Increased is_pro() API timeouts
- Fixed: Remove redundant _get_api_key() cache check
- Fixed: Some PHP notices on fresh installs
- Fixed: Bulk Smush button keeps spinning after 50 images for free version
- Fixed: NextGen Bulk Smush button issue
- Fixed: Invalid header issue
- Fixed: Warnings in file functions
- Updated: Added limit on query results, for sites with higher image count, Use filter
wp_smush_media_query_limitto adjust values
- Added: Sortable WP Smush column in Media Library
- Added: Filters
wp_smush_media_imagefor Media Gallery,
wp_smush_nextgen_imageFor NextGen gallery, allows to skip a particular image size from smushing
- Added: NextGen Gallery support (Pro feature)
- Updated: Skip webp images ( causing ajax error for few sites )
- Fixed: Warning and Notices ( Media Library not loading )
- Fixed: Smush full size image if no other sizes are available
- Added: Detailed text for stats and settings
- Fixed: Change File permission after replacing image
- Fixed: Directory path for files
- Fixed: Workaround for Auto Smush issue on Hostgator
- Fixed: Smush button doesn't works in media library dialog on post screen, when add media is clicked (https://wordpress.org/support/topic/like-wp-smush-a-lot)
- New: Show number of images smushed in stats column
- Added: Support for WP Retina 2x Plugin
- Added: Filter
WP_SMUSH_API_TIMEOUTto change the default time out value from 60s
- Added: Smush original image option (Pro Only)
- Use string for text domain instead of PHP Constant ( WordPress Guideline )
- Updated: Max image size limit to 32Mb for Pro Version
- Fixed: Conflict with various themes while editing post and page
- Fixed: Word Count not working
- Fixed: Notice and Warnings
- New: Allow Super-smush for existing smushed images (Pro Only)
- Fixed: IMPORTANT - broken transient caching for is_pro
- Fixed: Fixed conflict with wp gallery link plugin in grid view
- Fixed: Other small fixes
- Fix: Fatal error conflict with some plugins on fronted of site
- Fixed (Important Update) - Image being corrupted while regenerating thumbnails
- Check for existing constant definition, before defining new
- UI changes
- Complete rewrite to use WPMU DEV's new fast and reliable API service.
- New: One-click bulk smushing of all your images.
- New: "Super-Smush" your images with our intelligent multi-pass lossy compression. Get over 2x more compression with almost no noticeable quality loss! (Pro)
- New: Keep a backup of your original un-smushed images in case you want to restore later. (Pro)
- UX/UI updated with overall stats, progress bar.
- Use Ajax for Bulk Smush to avoid timeouts and internal server error
- Other Notice and bug fixes
- Settings moved under Media > WP Smush.it
- Added debug log file
- Added settings option to disable check for home url.
- for PHP 5.4.x reordered class WpSmushit contructors to prevent Strict Standards Exception
- Removed check for file within local site home path.
- Corrected issues with Windows paths compare.
- Added debug output option to help with user support issues.
- Correct Settings > Media issue causing settings to report warnings and not save.
- Corrected some processing logic to better handling or image path. Images still need to be within ABSPATH of site
- Correct image URL passed to Smush.it API to convert https:// urls to http:// since the API does not allow https:// images
- Codes reformatted and cleaned up into a php class
- More texts are translatable now
- Fixed a bug that prevents execution
- check image size before uploading (1 MB limit)
- attempt to smush more than one image before bailing (kind thanks to xrampage16)
- allow setting timeout value under
Media > Settings(default is 60 seconds)
- about to get a new lease on life notice
- no longer maintained notice
- added setting to disable automatic smushing on upload (default is true)
- on HTTP error, smushing will be temporarily disabled for 6 hours
- added basic integration for the NextGEN gallery plugin
- add support for media bulk action dropdown
- compatibility with WordPress earlier than 3.1
- added a donate link
- cleaner handling of file paths
- bulk smush.it will no longer re-smush images that were successful
- bug fixes
- bulk smush.it
- bug fixes
- add debugging output on failure
- removed realpath() call
- IPv6 compat
- handle images stored on other domains -- props to ka-ri-ne for the fix
- avoid time-out errors when working with larger files -- props to Milan Dinić for the fix
- removed testing link
- updated Smush.it endpoint URL
- fixed path checking on Windows servers
- update to workaround WordPress's new JSON compat layer (see trac ticket)
- updated Smush.it endpoint URL
- fixed undefined constant
- updated Smush.it endpoint URL
- removed debugging code that was interfering with the Flash uploader
- bug fix
- updated to use Yahoo! hosted Smush.it service
- added security checks to files passed to
- added support for PHP 4
- created admin action hook as workaround to WordPress 2.9's
$_registered_pagessecurity (see changeset 11596)
- add savings amount in bytes to Media Library (thx Yoast)
- added support for
- fixed activation error when the PEAR JSON library is already loaded
- added test for
- added error message on PHP copy error
- improved handling of errors from Smush.it
- added ability to manually smush images from media library
- fixed inconsistent path handling from WP 2.5 -> WP 2.7
- added 'Not processed' status message when browsing media library
- added i10n functions
- first edition