Description
This plugin optimizes the loading of images which are the LCP (Largest Contentful Paint) element, including both img
elements and elements with CSS background images (where there is a style
attribute with an background-image
property). Different breakpoints in a theme’s responsive design may result in differing elements being the LCP element. Therefore, the LCP element for each breakpoint is captured so that high-fetchpriority preload links with media queries are added which prioritize loading the LCP image specific to the viewport of the visitor.
In addition to prioritizing the loading of the LCP image, this plugin also optimizes image loading by ensuring that loading=lazy
is omitted from any image that appears in the initial viewport for any of the breakpoints, which by default include:
- 0-320 (small smartphone)
- 321-480 (normal smartphone)
- 481-576 (phablets)
- >576 (desktop)
If an image does not appear in the initial viewport for any of these viewport groups, then loading=lazy
is added to the img
element.
?? Note: This plugin optimizes pages for actual visitors, and it depends on visitors to optimize pages (since URL metrics need to be collected). As such, you won’t see optimizations applied immediately after activating the plugin. And since administrator users are not normal visitors typically, optimizations are not applied for admins by default.
There are currently no settings and no user interface for this plugin since it is designed to work without any configuration.
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.
Installation
Installation from within WordPress
- Visit Plugins > Add New.
- Search for Image Prioritizer.
- Install and activate the Image Prioritizer plugin.
Manual installation
- Upload the entire
image-prioritizer
folder to the/wp-content/plugins/
directory. - Visit Plugins.
- Activate the Image Prioritizer plugin.
FAQ
-
Where can I submit my plugin feedback?
-
Feedback is encouraged and much appreciated, especially since this plugin may contain future WordPress core features. If you have suggestions or requests for new features, you can submit them as an issue in the WordPress Performance Team’s GitHub repository. If you need help with troubleshooting or have a question about the plugin, please create a new topic on our support forum.
-
Where can I report security bugs?
-
The Performance team and WordPress community take security bugs seriously. We appreciate your efforts to responsibly disclose your findings, and will make every effort to acknowledge your contributions.
To report a security issue, please visit the WordPress HackerOne program.
-
How can I contribute to the plugin?
-
Contributions are always welcome! Learn more about how to get involved in the Core Performance Team Handbook.
The plugin source code is located in the WordPress/performance repo on GitHub.
Reviews
There are no reviews for this plugin.
Contributors & Developers
“Image Prioritizer” is open source software. The following people have contributed to this plugin.
Contributors“Image Prioritizer” has been translated into 5 locales. Thank you to the translators for their contributions.
Translate “Image Prioritizer” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
0.2.0
Enhancements
- Lazy load videos and video posters. (1596)
- Prioritize loading poster image of video LCP elements. (1498)
- Choose smaller video poster image size based on actual dimensions. (1595)
- Add fetchpriority=low to occluded initial-viewport images (e.g. images in hidden carousel slides). (1482)
- Avoid lazy-loading images and embeds unless there are URL Metrics for both mobile and desktop. (1604)
0.1.4
Enhancements
- Move Auto Sizes logic from Enhanced Responsive Images to Image Prioritizer. (1476)
0.1.3
Bug Fixes
- Fix handling of image prioritization when only some viewport groups are populated. (1404)
0.1.2
- Update PHP logic to account for changes in Optimization Detective API. (1302)
0.1.1
- Fix background-image styled tag visitor’s handling of parsing style without background-image. (1288)
0.1.0
- Initial release.