Ce que Shopify fait nativement pour le chargement paresseux
Shopify n'a pas une seule bascule de « chargement paresseux » dans votre panneau d'administration. Il n'y a pas de case à cocher sous Paramètres → Performances qui l'active dans tout le magasin. Au lieu de cela, Shopify fournit outils pour les développeurs de thèmes pour implémenter le chargement différé – et l'utilisation ou non de ces outils dépend entièrement de votre thème.
Voici ce que Shopify propose au niveau de la plateforme :
Le image_tag
Le filtre Filtre à liquide — Lorsque les thèmes utilisent ce filtre pour restituer des images, Shopify peut automatiquement définir chargement="paresseux" sur les images dans les sections qui apparaissent plus bas sur la page.
Propriété
Le section.index — Indique aux développeurs de thèmes la position d'une section sur la page, permettant une logique conditionnelle : chargez avec impatience les 2 premières sections, chargez paresseusement tout ce qui se trouve en dessous.
Conversion automatique WebP/AVIF — Le CDN de Shopify diffuse automatiquement les images dans des formats modernes lorsque le navigateur les prend en charge, réduisant ainsi la taille des fichiers de 25 à 50 %.
Srcset d'image réactif — Le
Le filtre image_tag
Le filtre génère plusieurs tailles d'image afin que les navigateurs téléchargent la bonne taille pour chaque écran.
Ce sont des éléments de base solides. Mais ce ne sont que des éléments de base, et non une solution complète. L'écart entre les « outils disponibles » et les « outils réellement utilisés dans votre magasin » est l'endroit où se situent la plupart des problèmes de performances.
Curieux de savoir où se situe votre magasin ? Exécutez un test de vitesse gratuit pour voir si le chargement paresseux aide ou nuit à vos performances.
Comment Shopify image_tag
Le filtre et section.index Travail
Le image_tag
Le filtre Le filtre liquide est le moyen recommandé par Shopify pour restituer des images dans des thèmes. Lorsqu'un développeur de thème l'utilise correctement, il gère le dimensionnement réactif, la conversion de format et le chargement paresseux sur une seule ligne :
{{ product.featured_image | image_url: width: 800 | image_tag: loading: "lazy" }}
But the real power comes from combining it with section.index. Cette propriété indique au thème la position qu'occupe une section sur la page. L'équipe de performance de Shopify recommande en l'utilisant comme ceci :
{%- liquid
if section.index > 2
assign loading = "lazy"
else
assign loading = "eager"
endif
-%}
{{ section.settings.image | image_url: width: 1080 | image_tag: loading: loading }} Ce code charge avec impatience les images dans les deux premières sections (généralement le héros et la collection en vedette) et charge paresseusement tout ce qui se trouve en dessous. C'est une approche intelligente qui évite le #1 lazy loading mistake — chargement paresseux de votre image LCP. La propriété
Détail clé : Le section.index n'a été introduite qu'à la fin de 2022. Les thèmes construits avant cette date ne l'utilisent pas, ce qui signifie qu'ils chargent tout paresseusement (mauvais pour LCP) ou rien (mauvais pour les performances inférieures à la ligne de flottaison).
Le filtre
Le image_tag
Le filtre génère également un srcset
Attributs attribute with multiple image widths, letting the browser pick the optimal size. This works with lazy loading — when the browser decides to load a lazy image, it picks the right size from the srcset based on the viewport width.
Quels thèmes Shopify ont un chargement paresseux natif ?
Tous les thèmes ne sont pas égaux en matière d'implémentation du chargement paresseux. Voici la répartition :
Thèmes avec un bon chargement paresseux natif
Aube (et thèmes basés sur Dawn) — Utilisations image_tag
Le filtre + section.index correctement. Ajoute également fetchpriority="haut" sur les images LCP. Il s'agit de l'implémentation de référence de Shopify et de la référence en matière de performances de thème.
Sens, Artisanat, Goût, Colorblock — Les thèmes gratuits de Shopify, tous construits sur l'architecture Dawn. Ils héritent de la même logique de chargement paresseux.
La plupart des thèmes premium mis à jour après 2023 — Des développeurs de thèmes réputés comme Out of the Sandbox, Archetype et Prestige ont mis à jour leurs thèmes pour les utiliser section.index et image_tag
Le filtre.
Thèmes avec un chargement paresseux natif faible ou inexistant
Thèmes construits avant 2022 — Ceux-ci sont antérieurs section.index et utilisent souvent des bibliothèques de chargement paresseux JavaScript comme lazysizes, ou pas de chargement paresseux du tout.
Thèmes fortement personnalisés — Même si le thème de base avait un chargement paresseux, les modifications personnalisées le cassent souvent. Les développeurs qui ajoutent des sections personnalisées ignorent fréquemment le
Logique section.index .
Thèmes utilisant le chargement paresseux uniquement JS — Certains thèmes utilisent des lazysizes ou des bibliothèques similaires qui ajoutent une surcharge JavaScript et peuvent entrer en conflit avec le chargement différé du navigateur natif.
Vous ne savez pas à quelle catégorie appartient votre thème ? Le moyen le plus simple de le savoir est d'inspecter votre site - ce que nous aborderons dans le Section de test ci-dessous. Pour un aperçu plus approfondi des performances du thème, consultez notre guide sur le thèmes Shopify les plus rapides Guide.
5 choses que le chargement paresseux natif de Shopify ne couvre pas
Même avec un thème moderne utilisant image_tag
Le filtre correctement, le chargement paresseux natif de Shopify présente des angles morts importants :
1. Images et scripts injectés par l'application
Chaque application Shopify qui ajoute des éléments visuels (widgets d'avis, badges de confiance, popups de vente incitative, widgets de discussion) injecte ses propres images et scripts directement dans le DOM. Ceux-ci contournent entièrement le chargement paresseux de votre thème car ils ne sont pas rendus via Liquid. image_tag
Le filtre.
La boutique Shopify moyenne a 6 à 8 applications installées. Chacun ajoute des scripts qui se chargent immédiatement, quel que soit leur emplacement sur la page. C'est le le plus gros tueur de vitesse sur la plupart des magasins — et cela sort complètement du cadre du chargement paresseux natif.
2. Images d'arrière-plan CSS Éléments
Le chargement="paresseux" ne fonctionne que sur et
Étiquette
. Images définies comme arrière-plans CSS (image d'arrière-plan : url(...)) – courants dans les sections de héros, les bannières et les superpositions de sections – sont toujours chargés avec impatience. Le navigateur les télécharge dès qu'il analyse le CSS, même si la section est bien en dessous de la ligne de flottaison.
3. Vidéos et intégrations
Pendant que chargement="paresseux" fonctionne techniquement sur les iframes (y compris les intégrations YouTube), celles de Shopify
Le filtre image_tag
Le filtre ne s'applique pas aux éléments vidéo ou aux iframes - il s'agit uniquement d'images. Les commerçants qui ajoutent des vidéos de produits, des critiques YouTube ou des intégrations Instagram doivent gérer le chargement différé séparément. Voir notre Guide d'optimisation vidéo Shopify pour les motifs de façade et les techniques de chargement différé. Pour une compréhension plus approfondie des compromis, consultez chargement paresseux vs chargement impatient sur Shopify.
4. Décisions de chargement réactives
Le section.index > 2 approach is a rough heuristic. What's "below the fold" on a desktop monitor is very different from a mobile phone. An image grid that shows 4 columns on desktop (all visible) might show 1 column on mobile (only 1 visible). Native lazy loading doesn't adapt to screen size — it uses the same section-based logic regardless of device.
5. Différé de script
Le chargement paresseux des images ne représente que la moitié de l'équation des performances. Scripts bloquant le rendu — both from your theme and from apps — often cause more performance damage than unoptimized images. Native lazy loading addresses images but does nothing for JavaScript. Deferring app scripts, inlining critical CSS, and preloading fonts require a different toolset entirely.
Comblez chaque lacune : Thunder gère ce que le chargement paresseux natif ne peut pas
Thunder Page Speed Optimizer fonctionne au-dessus de le chargement paresseux natif de votre thème — comblant toutes les lacunes répertoriées ci-dessus. Il identifie automatiquement votre image LCP et la charge avec impatience, charge paresseusement tout ce qui se trouve en dessous de la ligne de flottaison (y compris le contenu injecté par l'application) et diffère les scripts non critiques que le chargement paresseux de l'image ne peut pas toucher.
- ✦ Diffère les scripts d'application — le plus gros tueur de vitesse qu'aucun chargement paresseux d'image ne peut corriger
- ✦ Détection intelligente LCP — ne charge jamais paresseusement le contenu au-dessus de la ligne de flottaison, quel que soit l'appareil
- ✦ Fonctionne avec n'importe quel thème — ancien, nouveau, personnalisé ou prêt à l'emploi
- ✦ CSS critique intégré + polices de préchargement — optimisation complète, pas seulement le chargement d'images
La plupart des magasins voient un Amélioration du score de vitesse de plus de 27 points après l'installation — car Thunder s'adresse à la pile d'optimisation complète, pas seulement au chargement des images. Voir tarifs.
Installer Thunder — Essai gratuit →Comment vérifier si votre boutique Shopify a un chargement paresseux
Avant d'apporter des modifications, vérifiez si votre thème implémente déjà le chargement différé. Voici trois façons de vérifier :
Méthode 1 : Inspecter l'élément (30 secondes)
- 1. Ouvrez votre boutique dans Chrome
- 2. Faites défiler jusqu'à une image bien en dessous du pli (par exemple, un produit dans la troisième rangée d'une collection)
- 3. Cliquez avec le bouton droit sur l'image → Inspecter
- 4. Rechercher
Balise
chargement="paresseux"dans leÉtiquette
Si vous voyez chargement="paresseux", votre thème a un chargement paresseux natif pour cette image. Si tu vois chargement="impatient" ou aucun attribut de chargement du tout, ce n'est pas le cas.
Méthode 2 : onglet Réseau Chrome DevTools
- 1. Ouvrez DevTools (F12) → onglet Réseau
- 2. Filtrer par "Img"
- 3. Rechargement dur (Ctrl+Shift+R)
- 4. Surveillez le nombre d'images — si toutes les images se chargent immédiatement, le chargement paresseux ne fonctionne pas
- 5. Maintenant, faites défiler lentement vers le bas — si de nouvelles demandes d'images apparaissent pendant que vous faites défiler, le chargement différé est actif
Méthode 3 : PageSpeed Insights
Gérez votre boutique à travers Informations Google PageSpeed. Si vous voyez la recommandation « Différer les images hors écran », vos images ci-dessous ne sont pas chargées paresseusement. Si cette recommandation n'apparaît pas, le chargement différé fonctionne probablement. Vous pouvez également utiliser notre test de vitesse Shopify gratuit pour une évaluation rapide.
Ajout manuel du chargement paresseux natif à Shopify
Si votre thème n'a pas de chargement paresseux ou ne l'implémente pas correctement, voici comment l'ajouter manuellement. Cela nécessite de modifier les fichiers Liquid de votre thème – effectuez d'abord une sauvegarde.
Étape 1 : utilisez image_tag au lieu des balises img
Recherchez les instances où votre thème utilise du brut
Balises et remplacez-les par celles de Shopify
Filtre
Étiquette
image_tag
Le filtre . Cela seul vous donne des images réactives, une conversion WebP et la base d'un chargement paresseux.
Avant (balise img manuelle) :
{'
'}
Après (image_tag avec chargement paresseux) :
{'{{ product.featured_image | image_url: width: 800 | image_tag: loading: "lazy", alt: product.title }}'}
Étape 2 : Ajouter la logique section.index
Pour éviter le chargement paresseux des images au-dessus de la ligne de flottaison, ajoutez une logique conditionnelle basée sur la position de la section :
{'{%- liquid'}
{' if section.index > 2'}
{' assign loading = "lazy"'}
{' else'}
{' assign loading = "eager"'}
{' endif'}
{'-%}'}
{'{{ section.settings.image | image_url: width: 1080 | image_tag: loading: loading }}'}
Étape 3 : Ajoutez une priorité de récupération à votre image LCP
Pour votre image de héros ou l'image principale de votre produit (l'élément LCP probable), ajoutez fetchpriority="haut" pour indiquer au navigateur de le prioriser :
{'{{ section.settings.hero_image | image_url: width: 1200 | image_tag: loading: "eager", fetchpriority: "high" }}'}
⚠️Important : Utiliser uniquement fetchpriority="haut" sur 1 à 2 images par page. L’utiliser sur plusieurs images va à l’encontre de l’objectif : si tout est hautement prioritaire, rien ne l’est. Pour Stratégies d'optimisation du LCP, voir notre guide dédié.
Erreurs courantes de chargement paresseux natif sur Shopify
❌ Chargement paresseux de l'image du héros
Ajout chargement="paresseux" à votre bannière de héros ou à l'image de votre produit vedette oblige le navigateur à attendre que IntersectionObserver confirme qu'il est visible, ce qui ajoute 200 à 1 000 ms à votre LCP. L'équipe performance de Shopify a confirmé que cela coûte en moyenne 1,0 seconde de LCP.
❌ Mixage Native et JS Lazy Loading
Certains thèmes incluent lazysizes.js et natif
Attributs chargement="paresseux". Cela crée un double traitement : les déclencheurs de chargement différé natifs du navigateur, et la bibliothèque JS exécute sa propre logique d'intersection. Cela gaspille du temps CPU et peut provoquer le flash ou le chargement des images deux fois. Choisissez-en un : le natif est le bon choix en 2026.
❌ Attributs de largeur et de hauteur manquants
Chargement paresseux sans explicite
Les attributs largeur et hauteur
Attributs (ou format CSS) provoquent Changement de mise en page cumulatif (CLS). Lorsque l'image paresseuse se charge, la page saute à mesure que l'image pousse le contenu vers le bas. Le
Le filtre image_tag
Le filtre ajoute automatiquement des dimensions - une autre raison de l'utiliser au lieu du brut .
Étiquette
❌ En supposant que toutes les sections utilisent image_tag
Même dans les thèmes qui utilisent généralement image_tag
Le filtre, les sections personnalisées et les applications de sections tierces utilisent souvent du brut
Balises . Une section mal chargée peut nuire aux performances de la page entière. Auditez toutes les sections, pas seulement les valeurs par défaut du thème.
Étiquette
Ces erreurs sont exactement la raison pour laquelle de nombreux commerçants préfèrent une solution globale. Si vous souhaitez avoir une idée complète de ce qui ralentit votre magasin, diagnostiquez les problèmes de vitesse de votre magasin avec notre guide étape par étape, ou simplement suivez le guide d'optimisation complet.
Foire aux questions
{item.question}
{item.answer}
L'essentiel sur le chargement paresseux natif de Shopify
Shopify propose un chargement différé natif, mais il s'agit d'un outil destiné aux développeurs de thèmes, et non d'une fonctionnalité à l'échelle du magasin. Si vous êtes sur un thème moderne comme Dawn qui implémente image_tag
Le filtre et section.index correctement, vos images de thème sont probablement chargées correctement paresseusement. Mais cela laisse toujours le contenu injecté par l’application, les images d’arrière-plan CSS, les vidéos et – surtout – les scripts bloquant le rendu complètement sans réponse.
Pour la plupart des magasins, le chargement paresseux natif couvre environ 30 à 40 % de l'opportunité d'optimisation. Le reste nécessite report du script, optimisation des images, inlining CSS critique et hiérarchisation intelligente des ressources - exactement quoi Thunder Page Speed Optimizer le fait automatiquement.
Commencez par tester votre boutique : Exécutez un test de vitesse gratuit pour voir où vous en êtes, puis décidez si le chargement paresseux natif est suffisant ou si vous avez besoin d'une approche plus complète.