/shortpixel-image-optimiser

ShortPixel Image Optimizer WordPress Plugin

Primary LanguageTSQL

=== ShortPixel Image Optimizer ===
Contributors: ShortPixel
Tags: compressor, image, compression, optimize, image optimizer, image optimiser, image compression, resize, compress pdf, compress jpg, compress png, image compression
Requires at least: 3.2.0
Tested up to: 5.4.1
Requires PHP: 5.3
Stable tag: 4.19.2
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

Speed up your website & boost your SEO by compressing old & new images and PDFs. WebP convert and optimize support.

== Description ==

**A freemium easy to use, comprehensive, stable and frequently updated image compression plugin supported by the friendly team that created it.  :)**

Increase your website's SEO ranking, number of visitors and ultimately your sales by optimizing any image or PDF document on your website.
ShortPixel is an easy to use, lightweight, install-and-forget-about-it <a href="https://shortpixel.com" target="_blank">image optimization</a> plugin that can compress all your past images and PDF documents with a single click. New images are automatically resized/rescaled and optimized on the fly, in the background. It's also compatible with any gallery, slider or ecommerce plugin.

**Ready for a quick DEMO? Test <a href="https://wpsandbox.net/" target="_blank">here</a> or <a href="https://sandboxwordpress.com/?htmldata=https://shortpixel.com/sp.html&slug=shortpixel-image-optimiser&redirect=plugins.php&title=Test%20SHORTPIXEL%20Now!&ga=UA-55918546-1" target="_blank">here</a>.**

Short Pixel uses minimal resources and works well with any shared, cloud, VPS or dedicated web hosting. It can optimize any image you have on your website even the images that aren't listed in Media Library like those in galleries like <a href="https://wordpress.org/plugins/nextgen-gallery/" target="_blank">NextGEN</a>, <a href="https://wordpress.org/plugins/modula-best-grid-gallery/" target="_blank">Modula</a> or added directly via FTP!

Both lossy and lossless image compression are available for the most common image types (JPG, PNG, GIF and WebP) plus PDF files.
We also offer **glossy** JPEG compression which is a very high quality lossy optimization algorithm. Specially designed for photographers!
Optimized images mean better user experience, better PageSpeed Insights or GTmetrix results, better Google PageRank and more visitors.

Make an instant <a href="http://shortpixel.com/image-compression-test" target="_blank">image compression test</a> on your site or <a href="http://shortpixel.com/online-image-compression" target="_blank">compress some images</a> to make sure they are to your liking.

**Why is ShortPixel the best choice when it comes to image optimization or PDF compression?**

* popular plugin with over 200,000 active installations according to WordPress
* compress JPG, PNG, GIF (still or animated) images and also PDF documents
* option to automatically convert PNG to JPG if that will result in smaller images. Ideal for large images in PNG format.
* no file size limit
* option to freely convert any JPEG, PNG or GIF (even animated ones!) to **WebP** for more Google love. <a href="http://blog.shortpixel.com/how-webp-images-can-speed-up-your-site/" target="_blank">How to enable WebP?</a>
* option to include the generated WebP images into the front-end pages by using the `<picture>` tag instead of `<img>`
* compatible with WP Retina 2x - all **retina images** are automatically compressed. <a href="http://blog.shortpixel.com/how-to-use-optimized-retina-images-on-your-wordpress-site-for-best-user-experience-on-apple-devices/" target="_blank">How to benefit from Retina displays?</a>
* optimize thumbnails as well as featured images. You can also **select individual thumbnails to exclude** from optimization.
* ability to optimize any image on your site including images in **NextGEN Gallery** and any other image galleries or sliders
* integrates with Gravity Forms post_image field type optimizing the images upon upload
* featured images can be automatically resized before being optimized with 2 different options. No need for additional plugins like Imsanity
* CMYK to RGB conversion
* **24h <a href="https://wordpress.org/support/plugin/shortpixel-image-optimiser/reviews/?filter=5" target="_blank">stellar support</a>** (24/7) directly from developers.
* easily **test lossy/lossless** versions of the images with a single click in your Media Library
* **great for photographers**: <a href="http://blog.shortpixel.com/how-much-smaller-can-be-images-without-exif-icc/" target="_blank">keep or remove EXIF</a> data from your images, compress images with lossless option
* works well with both HTTPS and HTTP websites
* uses progressive JPEG for larger images in order to speed up the image display
* you can run ShortPixel plugin on **multiple websites** or on a **multisite** with a **single API Key**
* it is **safe to test** and use the plugin: all the original images can be restored with a click, either one by one or in bulk
* 'Bulk' optimize all the existing images in Media Library or in any gallery with one click
* works great for **eCommerce websites using WooCommerce** or other plugins
* works great with NextGEN gallery, Foo Gallery and any other galleries and sliders
* compatible with WP Engine hosted websites and all the major hosting providers
* compatible with WPML and WPML Media plugins
* skip already optimized images
* compatible with watermarking plugins
* option to deactivate auto-optimizing images on upload
* images that are optimized less that 5% are bonus
* WooCommerce, WP offload S3 and WP Stateless compatible
* 30 days optimization report with all image details and overall statistics
* We are GDPR compliant! <a href="https://shortpixel.com/privacy#gdpr" target="_blank">Read more.</a>
* **free optimization credits for non-profits**, <a href="https://shortpixel.com/contact" target="_blank">contact us</a> for details

**How much does it cost?**
ShortPixel comes with 100 free credits/month and additional credits can be bought for as little as $4.99 for 5,000 image credits.
Check out <a href="https://shortpixel.com/pricing" target="_blank">our prices</a>.

> **Testimonials:**
> ★★★★★ **A Super Plugin works very well 62% reduction overall.** [robertvarns](https://wordpress.org/support/topic/a-super-plugin-works-very-well-62-reduction-overall/)
> ★★★★★ **The secret sauce for a WordPress website.**  [mark1mark](https://wordpress.org/support/topic/the-secret-sauce-for-a-wordpress-website/)
> ★★★★★ **A must have plugin, great support!** [ElColo13](https://wordpress.org/support/topic/a-must-have-plugin-great-support/)
> ★★★★★ **Excellent Plugin! Even Better Customer Service!**  [scaliendo](https://wordpress.org/support/topic/great-plugin-great-support-508/)
> ★★★★★ **Great image compression, solid plugin, equally great support.** [matters1959](https://wordpress.org/support/topic/support-shortpixel-image-optimiser/)
> [more testimonials](https://wordpress.org/support/plugin/shortpixel-image-optimiser/reviews/?filter=5)

[youtube https://www.youtube.com/watch?v=5EbX0Hsy6j4]

Help us spread the word by recommending ShortPixel to your friends and collect **100 lifetime monthly additional image credits for each referred active user**. Make money by promoting a great plugin with our <a href="https://shortpixel.com/free-sign-up-affiliate" target="_blank">50/50 affiliate program</a>.

**Get in touch!**

* Email <a href="https://shortpixel.com/contact" target="_blank">https://shortpixel.com/contact</a>
* Twitter <a href="https://twitter.com/shortpixel" target="_blank">https://twitter.com/shortpixel</a>
* Google+ <a href="https://www.google.com/+Shortpixelpage" target="_blank">https://www.google.com/+Shortpixelpage</a>
* Facebook <a href="https://www.facebook.com/ShortPixel" target="_blank">https://www.facebook.com/ShortPixel</a>
* LinkedIn <a href="https://www.linkedin.com/company/shortpixel" target="_blank">https://www.linkedin.com/company/shortpixel</a>

== Installation ==

Let's get ShortPixel plugin running on your WordPress website:


1. Sign up using your email at <a href="https://shortpixel.com/wp-apikey" target="_blank">https://shortpixel.com/wp-apikey</a>.
2. You will receive your personal API key in a confirmation email, to the address you provided.
3. Upload the ShortPixel plugin to the /wp-content/plugins/ directory
4. Use your unique API key to activate ShortPixel plugin in the 'Plugins' menu in WordPress.
5. Uploaded images can be automatically optimized in the Media Library.
6. Done!


== Frequently Asked Questions ==

= How does ShortPixel compare to other image optimisation plugins (e.g Smush, Imagify, TinyPNG, Kraken, EWWW)?  =
	ShortPixel has better compression rates, more features, supports backups and has very affordable one-time plans.
	If you are serious about making an informed decision please take 10 minutes and read this <a href="https://blog.shortpixel.com/wp-image-optimization-wordpress-plugins/">article</a>.

= Can I use the same API Key on multiple web sites? =
    Yes, you can.
    As long as you have available credits you can use a single API Key on as many websites as you wish!

= Can I test/use the plugin for free? =
    Yes you can.
    We offer 100 free image optimization credits each month. Exceeding the monthly free quota will pause the optimization process till the quota is reset or extended by buying one of our plans.

= Can I optimize images that aren't in Media Library? =
    Absolutely.
    You can actually optimize any image you have on your site regardless of its place. You just need to add - in the Advanced section of the ShortPixel Settings - the folders where the images you want to optimize are located and ShortPixel will work its magic and do the rest.

= Can I optimize both past and new images? =
    Sure!
    You can optimize all your past/current images using our "Bulk ShortPixel" page in your Media with a single click.

= A credit = an optimized image? =
    Yes, that is correct.
     But please note that usually an image in Media Library has 3, 5 or more associated thumbs. Each optimized thumb requires a credit. In the rare cases when ShortPixel does not optimize the image (lossy) with at least 5%, the credit will not be consumed, though.

= Can I restore my images? What happens with the originals? =
    If you choose the "Image backup" option in Settings/ShortPixel then the original version of any optimized image or PDF will be saved in the backup folder.
    The original image is needed if you want to restore an image or if you want to convert an image from lossy/glossy to lossless or viceversa.

= What types of formats can be optimized? =
    ShortPixel optimizes JPEG, PNG, GIF and PDF type of files.

= Do you have one-time plans? =
    Yes we do.
    The credits that come with our <a href="https://shortpixel.com/plans" >one-time plans</a> never expire. Yummy! :-)

= What happens to my existing images? =
    Your existing images are replaced with the optimized ones.
    If you choose the backup option then the originals will be saved in a separate folder so you can restore them should you ever need/want to do that.

= How does the plugin work? =
    Our light-weight plugin sends the original images to our Image Optimization Cloud where they are compressed. ShortPixel then downloads the optimized images and the unoptimized originals are replaced with the optimized versions.

= Do you optimize the images in cloud? =
    Yes, all the images processsed by ShortPixel are optimized in the Cloud. This takes the load off of your server and allows us to produce the best results.

= What payment methods are accepted? =
    We accept payments via PayPal and card.

= How do I activate the API key on a multisite? =
    You have to activate the plugin in the network admin and then activate it manually on each individual site in the multisite. Once you have done that, the Settings menu appears and you can add the API key for each individual site.
    As an alternative, you can edit wp-config.php and add this line:

`define('SHORTPIXEL_API_KEY', 'APIKEY');`
where `APIKEY` is the API Key received upon sign up.
    If configured that way, the API key will be used for all the sites of the multisite but will only be visible on the main site’s Settings page, being hidden for the rest of the sites.

= I am not the only one working in the WordPress Dashboard. How can I hide my API key? =
    There is a simple way to hide the API key, all you need to do is to add these two lines in your wp-config.php:

`define('SHORTPIXEL_API_KEY', '<<your api key here>>');`
`define('SHORTPIXEL_HIDE_API_KEY', true);`

= How much is a credit? =
    A credit is used each time ShortPixel optimizes an image or thumbnail by at least 5%. If we're not able to optimize an image or thumbnail by at least 5% then no credit will be used :-)
    Please also note that usually images in your Media Library have 3-5 thumbs associated and a credit will be used for each featured image or associated thumbnail that is optimized.

= Why shall I use a wordpress plugin and not an offline tool? =
    Because ShortPixel algorithms were perfected while optimizing over a hundred million real-life images.
    ShortPixel not only offers the best compression for JPEG, PNG, GIF and PDF files but it also saves you a lot of time. You just install it on your site and then ShortPixel will take care that all the images on your site are immediately optimized after upload.

= Does optimizing images affect my ALT tags? =
    No, ShortPixel only optimizes images, it won't touch anything else like your HTML/CSS.

= If I stop using ShortPixel will my images remain optimized? =
    Absolutely!
    Once optimized the images will remain optimized unless you explicitly choose to restore them. But why would you do that? :-)

= Do I have to pay monthly or one time? =
    We have both options available.
    One-time credits never expire are a bit more expensive. Check out our prices <a href="https://shortpixel.com/pricing" >here</a>

= When can I cancel a monthly plan? =
    Whenever you want.
    The credits you still have available for the current billing period will still be available until the end of the billing period. At the end of it, you won't be billed again and the plan will be reset to the free plan.

= When credits expire? =
    Monthly credits expire after 30 days while one-time credits never expire.

= Do you have an API? =
    Yes, we have several APIs and tools.
    You can learn more about it here:
    <a href="https://shortpixel.com/api-tools">https://shortpixel.com/api-tools</a>

= Can I use ShortPixel WP plugin on a localhost installation? =
    Unfortunately not :-(
    But you can use either our command line tool or our web tool
    <a href="https://shortpixel.com/web-tool-docs">https://shortpixel.com/web-tool-docs</a>
    <a href="https://shortpixel.com/cli-docs">https://shortpixel.com/cli-docs</a>

= How does resizing work? =
    If you choose the option to resize your images then the featured image can be resized to a predefined size while keeping its aspect and proportions intact. The associated thumbs won't be resized
    Using this option you can safely upload original images safely without needing to apply any pre-processing to make them smaller.

= Will ShortPixel work if my website is using CloudFare? =
    Absolutely! Sometimes you'll need to make sure you whitelist some IPs, just <a href="http://shortpixel.com/contact">contact us</a> and we'll assist you with that.

= I’m stuck. What do I do? =

The ShortPixel team is here to help. <a href="https://shortpixel.com/contact">Contact us</a>!


== Actions and Filters for Developers ==

The ShortPixel Image Optimiser plugin calls the following actions and filters:

`do_action( 'shortpixel_image_optimised', $post_id );`
upon successful optimization;

`do_action("shortpixel_before_restore_image", $post_id);`
before restoring an image from backup;

`do_action("shortpixel_after_restore_image", $post_id);`
after succesful restore;

`apply_filters("shortpixel_backup_folder", $backup_folder, $main_file_path, $sizes);`
just before returning the ShortPixel backup folder, usually /wp-content/uploads/ShortpixelBackups. The `$sizes` are the sizes array from metadata;

`apply_filters('shortpixel_image_exists', file_exists($path), $path, $post_id);`
post ID is not always set, only if it's an image from Media Library;

`apply_filters('shortpixel_image_urls', $URLs, $post_id);`
filters the URLs that will be sent to optimization, `$URLs` is a plain array;

`apply_filters('shortpixel/db/chunk_size', $chunk);`
the `$chunk` is the value ShortPixel chooses to use as number of selected records in one query (based on total table size), some hosts work better with a different value;

In order to define custom thumbnails to be picked up by the optimization you have two options, both comma separated defines:

`define('SHORTPIXEL_CUSTOM_THUMB_SUFFIXES', '_tl,_tr');`
will handle custom thumbnails like image-100x100_tl.jpg;

`define('SHORTPIXEL_CUSTOM_THUMB_INFIXES', '-uae');`
 will handle custom thumbnails like image-uae-100x100.jpg;

`define('SHORTPIXEL_USE_DOUBLE_WEBP_EXTENSION', true);` 
will tell the plugin to create double extensions for the WebP image counterparts, for example image.jpg.webp for image.jpg;

`define("SHORTPIXEL_NOFLOCK", true);`
don't use flock queue, only activate this when you have `flock()` denied errors on your installation;

`define("SHORTPIXEL_EXPERIMENTAL_SECURICACHE", true);`
adds timestamps to URLS, to prevent hitting the cache. Useful for persistent caches.

Hide the Cloudflare settings by defining these constants in wp-config.php:

`define('SHORTPIXEL_CFTOKEN', 'the Cloudflare API token that has Purge Cache right');`
`define('SHORTPIXEL_CFZONE', 'The Zone ID from the domain settings in Cloudflare');`

== Screenshots ==

1. Bulk optimization running. (Media>Bulk ShortPixel)

2. Activate your API key in the plugin Settings. (Settings>ShortPixel)

3. Check out the main settings after API key activated. (Settings>ShortPixel)

4. Tweak it using Advanced settings. (Settings>ShortPixel)

5. Compress all your past images with one click. (Media>Bulk ShortPixel)

6. Check your stats: number of processed files, saved space, average compression, saved bandwidth, remaining images. (Settings>ShortPixel)

7. Check images optimization status, restore or reoptimize the image. (Media>Library)

8. Check image optimization details. (Media>Library->Edit)

9. Check other optimized images status - themes or other plugins' images. (Media>Other Media)

== Changelog ==

= 4.19.2 =

Release date June 10th 2020
* Fixed a fatal error when specific notifications were active and the plugin wasn't updated through WordPress;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.

= 4.19.1 =

Release date June 9th 2020
* Fixed a fatal error when WebP delivery was active;
* Fixed an error in a specific situation when running out of credits while the bulk processing was running;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.

= 4.19.0 =

Release date June 4th 2020
* Added an animation in settings that better explains the automatic resize done by ShortPixel;
* Fix for fatal errors in some cases when updating the plugin, by moving the class loader to PSR-4;
* Fix for a situation where the compare function wouldn't work because of a wrong assumption for the backup folder path;
* Fix: if directory structure is fully empty, select other media folder displays empty modal;
* Fix for check quota button that wasn't working in certain situations;
* Fix for missing DB table when doing a bulk restore before having optimized images;
* Fix for a DB foreign key issue in situations where multiple WordPress sites run on the same DB;
* Fix for backup getting broken on IIS/Windows servers, because of the way Windows handles the paths;
* Compability fix for WooCommerce germanized PRO plugin, where the cart page was throwing a fatal error because of the PDF that ShortPixel was trying to optimize;
* Various fixes for other media screen, to make it more consistent with the Media Library;
* Language – 5 new strings added, 1 updated, 1 fuzzied, and 0 obsoleted.    

= 4.18.1 =

Release date 20th May 2020
* Fix for a situation when running the bulk could result in duplicate images;
* Updated some old docs links;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.    

= 4.18.0 =

Release date 7th May 2020
* Added a warning for the case when Imagik library isn't available and "Keep EXIF data is enabled";
* Added a check to prevent the bulk process to be called in multiple browsers in order to decrease the load on admin-heavy sites;
* Fix for the situation when the bulk process would enter a loop in certain situations;
* Fix for the notices after bulk restore that would duplicate the files missing form backups;
* Fix for multisite when DB tables were created even for sub-sites without the plugin being active;
* Language – 1 new strings added, 0 updated, 0 fuzzied, and 5 obsoleted.

= 4.17.4 =

Release date: 22nd April 2020
* Fix 400 errors response on admin-ajax.php when using a fontend uploader plugin;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.

= 4.17.3 =

Release date: 16th April 2020
* Added a collapsable details feature to notifications, in order to avoid filling up the screen with them;
* Added a filter to completely disable the plugin, when necessary (for certain user roles for example);
* Hide the API key from the support chat module in settings, when the API key is entered via wp-config.php;
* Prevent fatal errors if multiple versions of the plugin are active simultaneously;
* Fix for API key that could be leaked in the frontend through JS;
* Fix for situations where the plugin was crashing if the API key was added via wp-config.php;
* Fix missing optimize button on Edit Media screen;
* Fix for time stamp in Other Media screen when the server is set on another time zone than UTC;
* Fix for JSON parsing errors when `set_time_limit` function is forbidden;
* Fix for notifications not showing correctly the number of credits available;
* Fix for images stuck in "Pending Restore" in Other Media, when there was no backup for them;
* Fix for hamburger menu in Other Media not displaying options centered;
* Language – 4 new strings added, 2 updated, 0 fuzzied, and 4 obsoleted.

= 4.17.2 =

Release date: 10th April 2020
* Fix for Over Quota notification that didn't go away even if there were enough credits;
* From now on other ShortPixel notifications will only show up on ShortPixel related pages (Media Library, ShortPixel settings, Other Media page, Bulk Optimize page);
* Added a constant which can be used to completely disable all ShortPixel notifications. To be used with care as in certain cases it can hide important notifications;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.

= 4.17.1 =

Release date: 6th April 2020
* Fix for MySQL index errors for MySQL 5.6;
* Language – 0 new strings added, 0 updated, 0 fuzzied, and 0 obsoleted.

= 4.17.0 =

Release date: 2nd April 2020
* Complete rewrite of the Other Media part of the plugin. It now looks closer to the standard Media Library, having thumbnails and actions like Compare, Re-optimize and Restore from backup for all images when you have Backups activated;
* Added notification to activate the integration with NextGen Gallery, when the plugin is active and the integration is not activated;
* Improved the way Other Media folders are added and it should not crash anymore for folders with a very large number of images;
* Fix for the extra information (i) next to each Other Media folder in the Advanced Settings;
* Fixes for multiple issues reagrding the NextGen Gallery plugin integration;
* Fix for notififcations showing up when they're not supposed to show up;
* Fix for multiple notifications when backup files are not found. These are now merged together;
* Fix for notifications that were crashing outside ShortPixel screens;
* Fix for the report that was wrongly stating 40 days, when actually the report is only for 30 days;
* Fix for the exclude regex section that was returning true even if no matches were found;
* Removed from the plugin the files that are not used anymore;
* Language – 15 new strings added, 0 updated, 0 fuzzied, and 8 obsoleted.

= EARLIER VERSIONS =
* please refer to the <a href="https://github.com/short-pixel-optimizer/shortpixel-image-optimiser/blob/master/changelog.txt" target="_blank">changelog.txt</a> file inside the plugin archive.