Si vous avez testé votre boutique Prestashop avec des outils comme Pagespeed Insight de Google ou GTMetrix vous avez peut-être eut la recommandation "Encodez les images de manière efficace" ou "Diffuser des images aux formats nouvelle génération". Si c'est le cas cet article est fait pour vous, je vous explique comment choisir le bon module Prestashop pour compresser vos images au format WEBP.

Optimisation des images, pourquoi faire?

C'est probablement la première question à se poser! L'optimisation d'une image permet d'en réduire sa taille / son poids, et par conséquent la vitesse de chargement de la page sera plus rapide. Le format WEBP permet d'optimiser les fichiers PNG et JPG de vos pages web et d'en réduire la taille de 30% en moyenne, c'est d'autant plus important sur les mobiles dont la connexion à internet est plus lente. Vous n'allez pas forcément gagner en référencement naturel (SEO) mais le chargement des pages étant plus rapide vos clients seront plus à même de faire des achats en ligne!

Le module compresse-t-il toutes les images?

Certains modules ne vont compresser que les images des produits, catégories, marques et fournisseurs. Les images du thème ou des modules ne bénéficieront pas d'optimisation WEBP. Vérifiez bien ce point lorsque vous allez choisir le module Prestashop WEBP.

Faut-il installer une extension PHP particulière?

Vérifiez comment le module compresse les images. Il lui faut l'un des compresseurs suivants:

Les binaires Cwebp : c'est le programme fourni par Google, certains modules l'installent mais ils ne sont pas toujours compatibles avec les serveurs (permissions refusée ou processeurs incompatibles)
Vips PHP extension : c'est une extension de PHP pas souvent présente sur les hébergements standards
Imagick PHP extension: c'est une extension de PHP pas souvent présente sur les hébergements standards
Gmagick PHP extension: c'est une extension de PHP pas souvent présente sur les hébergements standards
Gd PHP extension: c'est une extension de PHP souvent présente sur les hébergements mais pas toujours compilée avec l'option WEBP

Certains modules utilisent un service externe d'optimisation des images comme ewww.io.

Par expérience le compresseur WEBP le plus efficace est l'extension GD. Le binaire de Google est souvent beaucoup plus lent (x10) que GD.

Que se passe-t-il si le navigateur (Safari par exemple) ne lit pas le format WEBP?

Assurez vous que le module retourne bien l'image originale (non compressée) si le navigateur ne sait pas lire le format WEBP. Par exemple, les navigateurs Safari (iPhones / Apple) ne le prendront en charge qu'à partir de la version 16! Pour cela il y a un moyen très simple, tous les navigateurs indiquent au serveur quel format il sait lire avec le header 'Accept', si 'image/webp' n'y est pas alors il faut retourner l'image non compressée.

Vérifiez également si le module modifie les URLs des images ou pas (en modifiant l'extension .JPG en .WEBP par exemple). S'il ne les modifie pas (c'est mieux pour les modules de cache HTML) il faut qu'il offre la possibilité de le faire car certains CDN (proxy) comme Cloudflare ne gère pas l'entête 'Vary: Accept'.

Comment sont compressées les anciennes et les nouvelles images?

Il y a deux stratégies:

  1. le module compresse les images à chaque fois que vous en ajoutez via le back office, dans ce cas il va lui falloir un traitement très long pour compresser les images déjà présentes dans la boutique.
  2. le module compresse les images au format WEBP au 1er affichage, dans ce cas pas besoin de gros traitement, les images sont compressées uniquement si elles sont utilisées et lors du tout 1er affichage dans un navigateur

Peut-on choisir la qualité des images?

Le format WEBP étant 'lossy', c'est à dire avec perte de données, la qualité des images est dégradée mais vous pouvez ajuster le taux de compression pour que cette perte de qualité ne se voit pas à l'oeil nu. Vérifiez que le module WEBP permet de choisir ce taux de compression afin de pouvoir définir par vous même la qualité exigée.

Conclusion

Vous savez maintenant quelles questions vous devez vous poser pour choisir votre module Prestashop de compression WEBP.

Sachez que notre module Speed Pack (Page Cache Ultimate + WEBP + Profiler SQL + Nettoyeur de BDD) propose la compression WEBP avec Page Cache Ultimate ou alors vous pouvez opter pour le module autonome Compression WEBP compatible à partir de Prestashop 1.6.