by WordPress Performance Team on WordPress.org
Prioritizes the loading of images and videos based on how they appear to actual visitors: adds fetchpriority, preloads, lazy-loads, and sets sizes.
This plugin optimizes the loading of images (and videos) with prioritization to improve Largest Contentful Paint (LCP), lazy loading, and more accurate image size selection.
The current optimizations include:
fetchpriority=high preload links (both as LINK[rel=preload] elements and Link response headers) for image URLs of LCP elements:
IMG element, including the srcset/sizes attributes supplied as imagesrcset/imagesizes on the LINK.SOURCE element with a type attribute in a PICTURE element. (Art-directed PICTURE elements using media queries are not supported.)background-image inline style attribute.background-image applied with a stylesheet (when the image is from an allowed origin).VIDEO element’s poster image.fetchpriority=high is only added to an IMG when it is the LCP element across all responsive breakpoints.fetchpriority=low to IMG tags which appear in the initial viewport but are not visible, such as when they are subsequent carousel slides.IMG tags based on whether they appear in any breakpoint’s initial viewport.style attributes.VIDEO tags by setting the appropriate attributes based on whether they appear in the initial viewport. If a VIDEO is the LCP element, it gets preload=auto; if it is in an initial viewport, the preload=metadata default is left; if it is not in an initial viewport, it gets preload=none. Lazy-loaded videos also get initial preload, autoplay, and poster attributes restored when the VIDEO is going to enter the viewport.sizes=auto is set on IMG tags after setting correct lazy-loading (above).sizes attribute using the widths of an image collected from URL Metrics for each breakpoint (when not lazy-loaded since then handled by sizes=auto).~~ (This has been removed due to an issue; use Enhanced Responsive Images instead.)poster image of a VIDEO from full size to the size appropriate for the maximum width of the video (on desktop).This plugin requires the Optimization Detective plugin as a dependency. Please refer to that plugin for additional background on how this plugin works as well as additional developer options.
👉 Note: This plugin optimizes pages for actual visitors, and it depends on visitors to optimize pages. As such, you won’t see optimizations applied immediately after activating the plugin. Please wait for URL Metrics to be gathered for both mobile and desktop visits. And since administrator users are not normal visitors typically, optimizations are not applied for admins by default.
Your site must have the REST API accessible to unauthenticated frontend visitors since this is how metrics are collected about how a page should be optimized. There are currently no settings and no user interface for this plugin since it is designed to work without any configuration.