Ce qu’est le lazy loading (et pourquoi c’est mal compris)

Le lazy loading consiste à retarder le chargement d’un média jusqu’à ce qu’il approche de la zone visible à l’écran. L’idée est simple : pourquoi charger une image en bas de page dès l’arrivée du visiteur, si celui-ci ne scrollera peut-être jamais jusque-là ? Bien appliqué, ça réduit le poids initial de la page et accélère le rendu.

Mal appliqué — et c’est le cas sur une bonne partie des sites WordPress —, le lazy loading retarde exactement les éléments qu’il ne fallait pas retarder : l’image principale en haut de page, celle qui définit le LCP (Largest Contentful Paint), un des trois Core Web Vitals mesurés par Google. Ce guide t’explique ce que WordPress gère déjà seul, ce qui lui échappe encore, et où se situe le piège le plus fréquent.

Ce tutoriel s’adresse à toute personne qui gère un site WordPress (PME, e-commerce, site vitrine) et veut comprendre pourquoi son score PageSpeed stagne malgré des images optimisées.

Prérequis

1. Vérifier ce que WordPress fait déjà nativement

Depuis la version 5.5 (2020), WordPress applique automatiquement l’attribut loading="lazy" sur les balises <img> du contenu, à l’exception de la ou des premières images détectées dans le flux principal. Depuis WordPress 6.3, ce comportement s’est affiné : le CMS tente d’identifier automatiquement l’image “au-dessus de la ligne de flottaison” pour ne pas la mettre en lazy load.

Concrètement, si tu inspectes le code source de ta page (clic droit > Afficher le code source), tu dois voir quelque chose comme :

<img src="photo.jpg" loading="lazy" width="800" height="600" alt="...">

Ce mécanisme fonctionne bien pour :

Il ne fonctionne pas pour :

Si ton site tourne sous un de ces builders, jette un œil à nos guides dédiés : Elementor lent et WPBakery détaillent les réglages spécifiques à chaque outil.

2. Identifier ce qui échappe au lazy load natif

Avant d’ajouter quoi que ce soit, fais l’inventaire. Ouvre les DevTools (F12), onglet Network, filtre “Img” et “Media”, puis recharge la page en scrollant lentement. Observe :

Ce diagnostic te dit précisément où intervenir. Souvent, le vrai poids mort d’une page WordPress vient moins des images du contenu (déjà gérées nativement) que des iframes vidéo et des sections en arrière-plan CSS des page builders.

3. Ajouter un plugin uniquement quand c’est justifié

Un plugin de lazy loading dédié (a3 Lazy Load, WP Rocket dans son module intégré, ou Autoptimize) a du sens dans trois cas précis :

  1. Tu as des iframes vidéo en nombre (page portfolio, blog avec vidéos embarquées) : un plugin peut remplacer l’iframe par une simple miniature cliquable jusqu’au clic réel, ce qui évite de charger le lecteur YouTube entier (souvent plusieurs centaines de Ko de JS) avant même que l’utilisateur ne veuille regarder.
  2. Tu utilises des background-image en CSS que WordPress ne détecte pas nativement.
  3. Ton thème ou builder est ancien et n’implémente pas encore l’attribut loading="lazy" correctement.

Dans tous les autres cas — site en blocs Gutenberg récents, thème à jour — ajouter un plugin de lazy loading en plus du natif WordPress est redondant, et peut même créer des conflits (double application de l’attribut, scripts JS qui interceptent le scroll en double).

Si ton site combine plusieurs plugins de performance, vérifie aussi les interactions avec ton plugin de cache : certains modules cache incluent déjà un lazy load, inutile de superposer.

4. Corriger le piège du LCP : ne pas lazy-loader le haut de page

C’est l’erreur la plus fréquente et la plus coûteuse en score. Un plugin de lazy load mal configuré applique loading="lazy" à toutes les images, y compris celle qui définit ton LCP — souvent l’image héro en haut de page. Résultat : le navigateur attend un signal de scroll avant même de commencer à charger l’image la plus importante de la page. Ton LCP explose, parfois de 1 à 3 secondes.

La correction :

Ce réglage à lui seul améliore souvent le LCP plus que n’importe quelle optimisation d’image en poids de fichier. D’ailleurs, si le problème vient de la qualité ou du poids des visuels eux-mêmes, notre comparatif des plugins d’optimisation d’images complète bien cette étape.

5. Tester et mesurer après mise en place

Ne fais pas confiance à ton impression visuelle — mesure. Lance PageSpeed Insights (mobile et desktop) avant et après chaque changement, en gardant une note du score et du temps de LCP. Vérifie aussi le comportement en navigation réelle (scroll manuel) pour confirmer que le lazy load se déclenche bien avant l’arrivée visuelle de l’élément — pas pile au moment où l’utilisateur le voit, ce qui créerait un effet de “pop-in” visible.

ÉlémentLazy load natif WordPressNécessite un plugin
Images du contenu (Gutenberg)Oui, automatiqueNon
Image héro / LCPDoit être exclue manuellement
Iframes vidéo (YouTube, Vimeo)Non géréOui, recommandé
Background-image CSSNon géréOui, selon thème
Sliders de builders (Elementor, WPBakery)Variable selon versionSouvent oui

Si malgré ces réglages ton site reste lent globalement, le problème dépasse probablement le seul lazy loading — consulte notre diagnostic complet de site WordPress lent ou le guide d’optimisation WordPress pour une vue d’ensemble.

Pièges courants

Le lazy loading natif de WordPress fonctionne-t-il sur toutes les versions ?

Non. Il est actif depuis WordPress 5.5 (2020), avec une détection améliorée du LCP depuis WordPress 6.3. Si ton site tourne sur une version antérieure ou n’a pas été mis à jour depuis longtemps, ce mécanisme peut être absent ou incomplet.

Faut-il désactiver le lazy load pour améliorer le SEO ?

Non, il ne faut pas le désactiver globalement — il reste utile pour la majorité des images sous la ligne de flottaison. Il faut simplement l’exclure précisément sur l’image ou la vidéo qui compose le LCP.

Un plugin de lazy load ralentit-il le site ?

Un plugin mal configuré ou redondant avec le natif WordPress peut ajouter du JavaScript inutile et créer des conflits. Vérifie toujours s’il n’existe pas déjà une solution native ou incluse dans ton plugin de cache avant d’en ajouter un dédié.

Comment savoir quelle image définit mon LCP ?

Lance un audit Lighthouse (Chrome DevTools, onglet Lighthouse) : la section performance indique explicitement “Largest Contentful Paint element” avec l’élément HTML concerné.

Le lazy loading n’est pas une option à activer ou désactiver en bloc : c’est un réglage fin, image par image. WordPress fait la moitié du travail depuis 2020 — le reste consiste à corriger ses angles morts (iframes, arrière-plans, builders) sans jamais toucher à l’image qui ouvre la page.

Ce problème, Peechy s'en occupe

Plutôt que de tout gérer seul, confiez votre site à une agence qui s'occupe de tout — hébergement, sécurité, maintenance et corrections. Encore plus simple en abonnement : on règle les soucis avant même que vous les remarquiez.

Confier mon site à Peechy