A drop dead simple and lightweight image, iframe, and video optimization plugin to satisfy Google PageSpeed Insights and Core Web Vitals.
A drop dead simple and lightweight image, iframe, and video optimization plugin to satisfy Google PageSpeed Insights, Lighthouse, and overall user experience.
This tiny little plugin (around 14kb zipped) will automatically
no-lazy
or skip-lazy
class.lazyload
class to the background image container)no-lazy
or skip-lazy
class.Should works well with all page builders and theme builders. This plugin also able to lazy loading WooCommerce images and preloading WooCommerce product featured images.
Lazysizes is highly performant lazy load library, written by Alexander Farkas in pure JS with no dependencies.
Taken from lazysize’s github description:
High performance and SEO friendly lazy loader for images (responsive and normal), iframes and more, that detects any visibility changes triggered through user interaction, CSS or JavaScript without configuration.
Example filter to add extra lazyload exclude list:
add_filter( 'lpam_extra_exclude_list', function($lpam_extra_exclude_list) { return array( 'my-logo', 'my-hero-img', 'exclude-lazy' ); } );
Example filter to change lazysizes config (Read the docs):
add_filter( 'lpam_lazysizes_js_before', function($lpam_lazysizes_js_before) { return 'window.lazySizesConfig = { expand: 500, threshold: 500 };' } );
Example filter to change the image sizes for preload featured image:
add_filter( 'lpam_preload_featured_images_image_size', function($image_size, $post) { if ( is_singular( 'post' ) ) { return 'large'; } elseif ( is_singular( 'product' ) ) { return 'full'; } else { return $image_size; } }, 10, 2 );
[new since 1.0.2] Example to disable the preload featured image feature in certain page-type:
add_filter('disable_featured_image_preload', function ($disable) { if ( is_singular( 'post' ) ) { return true; } });
[new since 1.0.3] Example to disable adding image dimension in certain page-type:
add_filter('disable_img_dimension', function ($disable) { if ( is_singular( 'post' ) ) { return true; } });
[new since 1.0.3] Example to disable this plugin completely in certain page using url:
add_filter('lazy_load_excluded_pages', function ($excludedPages) { $excludedPages[] = '/page-1'; $excludedPages[] = '/page-2'; return $excludedPages; });
[new since 1.0.3] Example to disable this plugin completely in certain page using page ID:
add_filter('lazy_load_excluded_page_ids', function ($excludedPageIDs) { $excludedPageIDs[] = 3678; // Exclude page with ID 1 $excludedPageIDs[] = 3615; // Exclude page with ID 2 return $excludedPageIDs; });
[new since 1.0.4] To disable the tag:
add_filter('disable_noscript', '__return_true');
Optimize More!: A Do It Yourself WordPress Optimization Plugin that give you the ability to:
Load CSS Asynchronously – selectively load CSS file(s) asynchronously on selected post/page types.
Delay CSS and JS until User Interaction – selectively delay CSS/JS load until user interaction on selected post/page types.
Preload Critical CSS, JS, and Font Files – selectively preload critical CSS/JS/Font file(s) on selected post/page types.
Remove Unused CSS and JS Files – selectively remove unused CSS/JS file(s) on selected post/page types.
Defer JS – selectively defer loading JavaScript file(s) on selected post/page types.
Advance Defer JS – hold JavaScripts load until everything else has been loaded. Adapted from the legendary varvy’s defer js method *recommended for defer loading 3rd party scripts like ads, pixels, and trackers
Load Gutenberg CSS conditionally
Remove Passive Listener Warnings
Shop Extra – A lightweight plugin to optimize your WooCommerce & Business site that makes you able to:
Animate on Scroll – Animate any Elements on scroll using the popular AOS JS library simply by adding class names. This plugin helps you integrate easily with AOS JS library to add any AOS animations to WordPress. Simply add the desired AOS animation to your element class name with “aos-” prefix and the plugin will add the corresponding aos attribute to the element tag.
Need to optimize more? Try my WordPress Page Speed Optimization’s Service.
Plugins > Add New
Lazyload, Preload, and more!
lazyload-preload-and-more
folder to your /wp-content/plugins/
directoryLazy loading css background images requires some effort from your end. Add an extra lazyload
class to each container which has css background image in your favorite page editor.
It calls images set as featured image in the native WordPress post/pages, using get_post_thumbnail_id()
and wp_get_attachment_image_src()
. Make sure you already adds them.
If you are using Elementor or other Page’s builders, simply edit the pages with the native WordPress editor to set the featured image.
By default, this plugin will be grab the url and preload the full
image size and woocommerce_single
for WooCommerce single product pages. You can change that using filter if your theme is uses different image size
. See example plugin description.