The add_image_size() function - WordPress best practices
Have you ever get a warning or notice from your web host that inform you have exceeded your disk quote? When you backup your simple WordPress site, did you noticed that the compressed file is too large?
In our WordPress projects, I have faced this situation too many times. In almost cases, the resized images are the main cause for this warning and large back up size.
When we upload an image to WordPress, the WordPress generate the file in various image sizes that defined in WordPress settings & our custom functions. That means, in the uploaded directory, we have duplicate of an image in various size. These duplicates can consume a large space in our hosting.
Some times, we never consider / aren’t aware the effect of
add_image_size() function in file size. We just use the function to get resized images.
Even in some projects, we never use default WordPress media settings! If the project is using WooCommerce plugin, there is chance to ignore the WooCommerce settings to resize the product images! Also we add custom image size using the
The result is unnecessary 10 to 12 resized images, low disk space and bulk size on backups.
The best practices
- Use default media settings (Settings » Media) to resize images.
- Enter 0 as width and 0 as height on unnessory options in media settings. That means, it never generate image on that size.
- As much as possible, try to use default media size in our theme.
- If it is too required, only use custom image sizes.
- If using WooCommerce plugin, use the WooCommerce media settings (WooCommerce » Settings » Products » Display) to resize product images.
- Resize images using offline tools and upload that one.
- Action hooks that trigger on, before or after add, update or delete actions of option - WordPress
- Get all variations of a variable product - WooCommerce
- Generate random string - Python
- Split domain from an email address - Python
- Get upcoming N days - PHP
Your Questions / Comments
If you found this article interesting, found errors, or just want to discuss about it, please get in touch.