How To Use the Image Optimizer Package for WP-CLI

Reading Time: 2 minutesThere will be many times when you will need to optimize all images in a site media library. If you are familiar with using WP-CLI, then there is a very handy package which can be installed. The package is called “image-optimize” and it will simplify the process of getting your images ready for web hosting. This package is not for “managed hosts” since the libraries needed will not be able to be installed having without root access and it can be CPU resource intensive.

Preparing to Run Commands

The package for WP-CLI is called image-optimize. To be able to use this package, you will need to login to your site’s server and update WP-CLI. You can update WP-CLI by running the following command: wp cli update Next, you will need to install a number of libraries that the package uses to optimizes jpeg, png and gif images with these commands: sudo apt-get install jpegoptim sudo apt-get install optipng sudo apt-get install pngquant sudo apt-get install gifsicle Now you can install the stable version of the image-optimize package with this command: wp package install typisttech/image-optimize-command:@stable

Optimizing Site Images

The following are examples of the commands to run after a WordPress core update: wp image-optimize mu-plugins wp image-optimize plugins wp image-optimize themes wp image-optimize wp-admin wp image-optimize wp-includes You can use this command to regenerate all thumbnails on a site. wp media regenerate --yes You may need to limit how many images that image-optimize will process in a single back. To limit the batch size,  you just need to add the –limit flag to the end of the batch command and specify the amount, as shown in these examples: wp image-optimize batch --limit=500 wp image-optimize batch --limit=1000 wp image-optimize batch --limit=2500 wp image-optimize batch --limit=5000 When using the image-optimize WP-CLI command, server CPU usage may be intensive, so run the batch commands in smaller sizes during the off hours times on your site. You can track CPU usage whilst running a batch optimize command by using htop. You can install and run htop using the following commands: sudo apt-get install htop htop To use htop to monitor server load, keep a terminal window open while the batch optimize command is running in another terminal window. In our testing, the CPU usage was not too high. 1.61GB/3.74GB Memory usage 180M - 3.86GB Swap

Restoring Optimized Images

Before images are optimized backup versions are created, which means that you can restore at any time to a backup file and replace out the optimized version. For example, Attachment 123 was optimized using this command: wp image-optimize attachment 123 To restore the attachment for 123 the command to run would be: wp image-optimize restore 123 You can use the wp media regenerate command to regenerate a specific media file. wp media regenerate 123   Being able to  optimize the images in your WordPress sites media library will reduce the amount of storage needed for your site. Optimization will also improve the speed and performance of your site for visitors, improving user experience and satisfaction.

Author Bio

About the Author: Luke Cavanagh

WooCommerce Specialist at Liquid Web. Devoted husband and Tween wrangler. Synthwave enthusiast. Jerry Goldsmith fan. Doctor Who fan and related gubbins.

Refer a friend and get hosting credit!