loading="lazy" HTML attribute for browsers that support it natively — giving you a double layer of lazy loading.
VIDEO LAZY LOAD
Easy Lazy Loader supports all WordPress video Embeds including Youtube, Vimeo and HTML5 video - for a full list see the WordPress Codex Embeds list. The WordPress embed method of copying and pasting the video url into posts and pages content area is fully supported.
AUDIO LAZY LOAD
Easy Lazy Loader supports all WordPress audio Embeds including SoundCloud, Spotify and HTML5 audio - for a full list see the WordPress Codex Embeds list. The WordPress embed method of copying and pasting the audio url into posts and pages content area is fully supported.
iFRAME LAZY LOAD
Easy Lazy Loader has built in support for content that is added by iframe from any source in content and widgets examples
easy_lazy_loader_html filter allows them to apply lazy loading to their plugin's outputloading="lazy" attribute added automatically for modern browser support.No worries. They get the original element in a noscript element. No Lazy Loading for them, though.
Lazy loading works just fine. The images will still load from your CDN.
Yes. Version 1.2.0 uses the native IntersectionObserver API which is supported by all modern browsers (Chrome, Firefox, Safari, Edge). For older browsers without IntersectionObserver support, the plugin falls back to loading all elements immediately. The plugin requires no external JavaScript libraries.
No. Since version 1.2.0, the plugin makes no external requests whatsoever. Your site data remains completely private.
Add the class no-lazy to any image you want to exclude. You can also configure additional skip classes in the plugin settings.
add_filter( 'ell_placeholder_url', 'my_custom_placeholder_image' ); function my_custom_placeholder_image( $image ) { return 'https://url/to/image'; }
If you have images output in custom templates or want to lazy load other images in your theme, you may pass the HTML through a filter:
<?php $html = '<img src="myimage.jpg" alt="">'; $html = apply_filters( 'easy_lazy_loader_html', $html ); echo $html; ?>
Or, you can add an attribute called "data-lazy-src" and "data-lazy-type" with the source of the image URL and set the actual image URL to a transparent 1x1 pixel.
$wpdb->prepare().placeholder_type and placeholder_image_size settings.@$_POST error suppression with proper isset() checks.fetch() instead of $.ajax().loading="lazy" HTML attribute to lazy-loaded images for dual-layer browser support.<input type="color"> — no jQuery UI dependency.$placeholder_color in default placeholder mode.wp_get_attachment_image_src() return value not checked before use.$OPTIONS) — now declared explicitly.json_encode() with wp_json_encode()._e() with esc_html_e() throughout admin output.