🐛 DebugIntermédiaire PS 1.6 PS 1.7 PS 8.x

Page blanche sur les fiches produits PrestaShop : diagnostic et correction

Résolvez le problème de page blanche sur vos fiches produits PrestaShop. Diagnostic pas à pas : module commentaires, Memcache, erreurs PHP fatales.

En bref : Une page blanche sur les fiches produits PrestaShop provient généralement d'un module défaillant (souvent Commentaires Produits) ou d'un cache Memcache mal configuré. Activez le mode debug pour identifier l'erreur, désactivez le module ou le cache incriminé, puis mettez à jour ou corrigez.

Publié le 21 mars 2026 6 min de lecture Alexandre Carette

Introduction

Une page blanche (aussi appelée WSOD — *White Screen of Death*) sur l'ensemble de vos fiches produits est l'un des problèmes les plus stressants pour un marchand PrestaShop. La boutique semble fonctionner normalement — la page d'accueil s'affiche, les catégories répondent — mais dès qu'on clique sur un produit, c'est le néant. Aucun message d'erreur, juste un écran blanc.

Dans la grande majorité des cas, ce symptôme a deux origines principales : un module défaillant (très souvent le module Commentaires Produits) ou un problème de cache serveur (Memcache/Memcached mal configuré). Voyons comment diagnostiquer et corriger ce problème méthodiquement.

Étape 1 : activer l'affichage des erreurs PHP

Avant toute chose, il faut rendre l'erreur visible. Une page blanche signifie qu'une erreur fatale PHP se produit mais que l'affichage des erreurs est désactivé.

Sur PrestaShop 1.6 / 1.7

Modifiez le fichier config/defines.inc.php :


// Remplacer
define('_PS_MODE_DEV_', false);
// Par
define('_PS_MODE_DEV_', true);

Sur PrestaShop 8.x

Modifiez le fichier .env à la racine du projet :


# Remplacer
APP_DEBUG=0
# Par
APP_DEBUG=1

Vous pouvez aussi activer le mode debug via le back-office dans Paramètres avancés → Performances → Mode debug.

Important : désactivez systématiquement le mode debug après résolution du problème. Laisser le debug actif en production expose des informations sensibles et dégrade les performances.

Une fois le debug activé, rechargez une fiche produit. Vous devriez maintenant voir un message d'erreur explicite, souvent de type Fatal error avec un nom de fichier et un numéro de ligne.

Étape 2 : identifier le module coupable

Dans la plupart des cas que j'ai rencontrés, le message d'erreur pointe vers un fichier de module, typiquement productcomments.php avec une erreur fatale autour de la ligne 734 (sur les anciennes versions du module).

Le suspect numéro 1 : le module Commentaires Produits

Le module productcomments (Avis clients) est historiquement l'un des modules les plus sujets aux erreurs fatales sur les fiches produits, pour plusieurs raisons :

  • **Incompatibilité de version** : le module n'a pas été mis à jour pour correspondre à la version PHP du serveur
  • **Appels à des méthodes dépréciées** : certaines fonctions PHP supprimées dans PHP 7.x/8.x étaient encore utilisées
  • **Conflit avec le thème** : le hook `displayProductExtraContent` est mal géré par certains thèmes

Test rapide : désactiver le module

Rendez-vous dans le back-office :

Modules → Module Manager → rechercher "commentaire" → Désactiver

Si les fiches produits réapparaissent immédiatement, le diagnostic est confirmé.

Correction définitive

Plusieurs options s'offrent à vous, par ordre de préférence :

  1. **Mettre à jour le module** depuis le back-office (Modules → Mises à jour). Sur PrestaShop 8.x, la version 6.x du module est recommandée.
    1. **Corriger le code manuellement** si la mise à jour n'est pas possible. Ouvrez le fichier `modules/productcomments/productcomments.php` et examinez la ligne indiquée dans l'erreur. Les corrections les plus fréquentes :
    2. 
      // Erreur typique : appel à une méthode sur un objet null
      // Avant (code défaillant)
      $result = $product->getComments();
      
      // Après (correction avec vérification)
      if ($product && method_exists($product, 'getComments')) {
          $result = $product->getComments();
      } else {
          $result = [];
      }
      
      1. **Remplacer le module** par une alternative comme `Product Reviews` ou une solution tierce mieux maintenue.
      2. Étape 3 : vérifier la configuration du cache (Memcache / Memcached)

        Si la désactivation du module commentaires ne résout pas le problème, le coupable peut être le système de cache serveur.

        Pourquoi Memcache provoque des pages blanches

        Lorsque Memcache (ou Memcached) est sélectionné comme système de cache dans PrestaShop mais que le service n'est pas réellement actif sur le serveur, ou que la connexion est instable, PrestaShop échoue silencieusement lors du chargement des données mises en cache — ce qui produit une page blanche.

        C'est particulièrement fréquent après :

        • Une migration de serveur (Memcache n'est pas installé sur le nouveau serveur)
        • Une mise à jour de PHP (l'extension `php-memcache` n'est plus chargée)
        • Un redémarrage serveur (le service Memcached ne s'est pas relancé)

        Correction

        Dans le back-office, allez dans Paramètres avancés → Performances → Système de cache :

        1. Basculez sur **Système de fichiers** (option la plus sûre)
        2. Videz le cache manuellement
        3. Vérifiez que les fiches produits fonctionnent à nouveau
        4. Si vous souhaitez conserver Memcache, vérifiez d'abord que le service tourne :

          
          # Vérifier si Memcached est actif
          systemctl status memcached
          
          # Vérifier si l'extension PHP est chargée
          php -m | grep memcache
          
          # Tester la connexion
          echo "stats" | nc localhost 11211
          

          Sur PrestaShop 8.x, le cache applicatif est géré par Symfony et Doctrine. Préférez APCu ou Redis comme système de cache, bien plus stables et performants que Memcache.

          Étape 4 : autres causes possibles

          Si les deux premières pistes n'ont rien donné, explorez ces causes supplémentaires :

          Limite mémoire PHP

          Les fiches produits avec beaucoup de déclinaisons ou d'images peuvent dépasser la limite mémoire :

          
          // Dans php.ini
          memory_limit = 256M
          

          Override corrompu

          Vérifiez si un override du ProductController existe :

          
          # Chercher les overrides liés aux produits
          ls -la override/controllers/front/ProductController.php
          

          Si le fichier existe, renommez-le temporairement pour tester :

          
          mv override/controllers/front/ProductController.php override/controllers/front/ProductController.php.bak
          

          Puis videz le cache (var/cache/ sur PS 8.x ou cache/ sur PS 1.6/1.7).

          Thème incompatible

          Basculez temporairement sur le thème par défaut (Classic) depuis le back-office pour confirmer ou éliminer cette piste.

          Méthode de diagnostic systématique

          Voici la procédure que j'applique systématiquement face à une page blanche ciblée sur les fiches produits :

          1. **Activer le mode debug** → lire le message d'erreur
          2. **Si erreur module** → désactiver le module incriminé → mettre à jour ou corriger
          3. **Si aucune erreur visible** → désactiver Memcache → tester
          4. **Si persistant** → désactiver les overrides → basculer sur le thème par défaut
          5. **Si toujours blanc** → vérifier `memory_limit`, les logs PHP (`/var/log/php-errors.log`) et les logs Apache/Nginx
          6. Prévention

            Pour éviter que ce problème ne se reproduise :

            • **Maintenez vos modules à jour**, en particulier ceux qui interviennent sur les fiches produits (commentaires, avis, attributs personnalisés)
            • **Testez sur un environnement de preprod** avant toute mise à jour module ou PHP
            • **Utilisez Redis ou APCu** plutôt que Memcache pour le cache
            • **Surveillez vos logs PHP** : un `Fatal error` dans les logs précède toujours la page blanche côté visiteur
            • **Configurez un monitoring** qui alerte quand une page clé retourne un code HTTP 500 ou un body vide
#page blanche #fiche produit #productcomments #memcache #fatal error #debug prestashop

Questions fréquentes

Tout ce que vous devez savoir sur ce sujet.

Un projet PrestaShop ?

Discutons-en directement.

★★★★★

193 projets livrés

Gratuit & sans engagement — réponse sous 24h

Alexandre Carette

Alexandre Carette

Expert PrestaShop & Architecture E-commerce

Développeur PrestaShop depuis 2014, 193 projets livrés. Je conçois des architectures headless Nuxt + PrestaShop et des outils d'automatisation IA pour les e-commerçants.