Disponible pour missions & renforts d’agence · Réponse rapide, par la personne qui intervient

Impossible d’ajouter ou d’afficher des images de produits sur PrestaShop

Deux pannes différentes se cachent derrière « problème d’images » sur PrestaShop : l’upload qui échoue au moment d’ajouter une photo, ou l’image bien ajoutée mais mal affichée en boutique. Les causes ne sont pas les mêmes, et les distinguer évite de chercher au mauvais endroit.

Décrire mon problème Discuter sur WhatsApp

Quand l’upload échoue

Deux réglages PHP du serveur, upload_max_filesize et post_max_size, plafonnent la taille des fichiers acceptés à l’envoi. Des photos actuelles de plusieurs mégapixels dépassent facilement des valeurs par défaut fixées il y a des années. PrestaShop n’affiche pas toujours un message clair dans ce cas : l’ajout semble juste ne rien faire, ou échoue sans explication utile.

Des droits d’écriture insuffisants sur le dossier /img/p bloquent aussi l’ajout, avec le même symptôme : rien ne se passe, ou une erreur générique s’affiche sans indiquer la cause réelle.

Quand l’image est ajoutée mais mal affichée

Au moment de l’ajout, PrestaShop génère automatiquement plusieurs formats redimensionnés de chaque image : vignette, image de fiche produit, zoom, etc. Un changement de thème modifie parfois les tailles attendues pour ces formats, ce qui explique que d’anciennes photos restent floues ou mal cadrées après un changement de thème alors que les nouvelles s’affichent correctement.

La solution native est le bouton Régénérer les vignettes, dans Préférences > Images : il recalcule tous les formats pour l’ensemble du catalogue selon les tailles actuellement définies. Un cache navigateur ou un CDN peut aussi continuer de servir une ancienne version de l’image après remplacement, ce qui donne l’impression que rien n’a changé alors que le fichier serveur est correct.

Ce que je vérifie dans l’ordre

  1. La taille réelle du fichier envoyé

    Comparée aux valeurs upload_max_filesize et post_max_size configurées côté serveur, pas seulement à une limite affichée dans PrestaShop.

  2. Les droits du dossier /img/p

    Le serveur doit pouvoir y écrire pour enregistrer l’image d’origine et générer les formats dérivés.

  3. La cohérence des tailles définies avec le thème actif

    Un thème récent attend parfois des dimensions différentes de celles utilisées par l’ancien thème, ce qui rend la régénération des vignettes nécessaire.

  4. Le cache navigateur et un éventuel CDN

    Avant de conclure à un bug, je vérifie qu’une ancienne version de l’image en cache n’explique pas simplement ce qui ressemble à un problème d’affichage.

Pages liées

Décrivez votre besoin en 1 minute

Quelques questions ciblées pour que je vous réponde avec une estimation, pas avec un questionnaire de plus.

Quelle version de PrestaShop ?
Sur quoi avez-vous besoin d’aide ?
Quel est l’état actuel de la boutique ?
Le thème est-il un thème du marché ou sur mesure ? (facultatif)

Un thème très modifié change la façon d’intervenir sans rien casser.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Indiquez au moins un e-mail ou un téléphone pour que je puisse vous répondre.

Questions fréquentes

J’ai augmenté la limite d’upload mais ça ne change rien, pourquoi ?
Deux réglages PHP interviennent, upload_max_filesize et post_max_size : si un seul des deux est augmenté, l’autre continue de limiter l’envoi. Il faut vérifier les deux, et parfois redémarrer le serveur pour que le changement soit pris en compte.
Dois-je régénérer les vignettes après chaque ajout de produit ?
Non, uniquement après un changement de thème ou de format d’image. Un ajout normal génère déjà tous les formats nécessaires automatiquement.
L’image s’affiche bien en admin mais pas en boutique, pourquoi ?
C’est souvent un cache navigateur ou un CDN qui continue de servir l’ancienne version. Un rafraîchissement forcé ou une purge de cache suffit généralement à vérifier cette hypothèse.
Puis-je automatiser un traitement sur les images à l’ajout, filigrane ou recadrage ?
Pas nativement : ce type de traitement automatique demande un module développé sur mesure, accroché au moment de l’ajout de l’image.