Avant toute chose : sauvegardez et posez-vous les bonnes questions
Avant de toucher à quoi que ce soit, faites une sauvegarde complète de votre boutique : fichiers et base de données. La plupart des hébergeurs proposent des sauvegardes automatiques : vérifiez que vous y avez accès et que vous savez les restaurer.
Demandez-vous ensuite ce qui a changé récemment. Dans la grande majorité des cas, un bug apparaît après une modification :
- L'installation ou la mise à jour d'un module ou du thème.
- Une mise à jour de Prestashop.
- Un changement de version de PHP par votre hébergeur, souvent fait sans prévenir.
- Une modification de code ou de configuration.
Si vous le pouvez, faites vos tests sur une copie de votre boutique (préproduction) plutôt que sur la boutique en ligne. Cela vous permettra de tout essayer sans gêner vos clients.
Activez le mode debug
Par défaut, Prestashop masque les erreurs aux visiteurs. Une page blanche ou une erreur 500 cache donc presque toujours un message d'erreur précis. Pour l'afficher, activez le mode debug :
- Depuis le back-office :
Paramètres avancés >> Performances, option Mode debug. - Si le back-office est inaccessible : ouvrez le fichier
config/defines.inc.phpde votre boutique et remplacezdefine('_PS_MODE_DEV_', false);pardefine('_PS_MODE_DEV_', true);.
Rechargez ensuite la page qui pose problème : le message d'erreur s'affiche, avec le fichier et la ligne concernés. Notez-le précisément, ou faites une capture d'écran.
Important : désactivez le mode debug dès votre diagnostic terminé. Il ralentit la boutique et affiche des informations techniques qui ne doivent pas rester visibles par vos visiteurs.
Consultez les journaux d'erreurs
Certaines erreurs ne s'affichent pas à l'écran mais sont enregistrées :
- Journaux de Prestashop : depuis la section
Paramètres avancés >> Logsde votre back-office. - Fichiers du dossier
var/logsde votre boutique : qui contiennent les erreurs détaillées. - Journal d'erreurs de votre hébergement : souvent accessible depuis votre espace client ou votre espace d'administration (rubrique Erreurs ou Logs).
Vérifiez la console de votre navigateur
Un bouton qui ne réagit plus, un panier qui ne se met pas à jour, un menu qui ne s'ouvre pas : ces bugs viennent souvent d'une erreur JavaScript, invisible dans les journaux de Prestashop.
Appuyez sur F12 pour ouvrir les outils de développement de votre navigateur, puis rechargez la page et reproduisez le problème :
- L'onglet « Console » affiche les erreurs JavaScript en rouge, avec le fichier en cause.
- L'onglet « Réseau » montre les requêtes en échec, comme par exemple un ajout au panier qui renvoie une erreur 500.
Videz le cache
Un bug d'affichage qui persiste après une modification vient parfois simplement du cache. Videz-le depuis la section Paramètres avancés >> Performances de votre back-office, bouton Vider le cache. Pensez aussi à vider le cache de votre navigateur, ou testez en navigation privée.
Isolez le module ou le thème en cause
Parfois les erreurs rencontrées sont bien visibles, mais n'affichent aucune information ni aucun log et il faut alors procéder à des tests afin d'en trouver la cause.
Les modules
Dans la section Paramètres avancés >> Performances de votre back-office, le mode debug propose deux options très pratiques :
- Désactiver les modules non natifs : tous les modules qui ne sont pas fournis par Prestashop sont désactivés d'un coup.
- Désactiver toutes les surcharges : les modifications du cœur de Prestashop apportées par les modules (overrides) sont ignorées.
Si le bug disparaît, réactivez vos modules un par un, en commençant par les derniers installés ou mis à jour, jusqu'à ce qu'il réapparaisse : vous tenez le coupable.
Le thème
Pour savoir si votre thème est en cause, testez avec le thème Classic fourni avec Prestashop (en l'activant depuis la section Apparence >> Thème et logo). Si le problème persiste, votre thème est innocent !
Attention : changer de thème modifie certains réglages (positions des modules, formats d'images...). Faites ce test de préférence sur une copie de votre boutique.
Vérifiez la compatibilité des versions
Beaucoup de bugs viennent d'une incompatibilité entre la version de Prestashop, celle de PHP et celles des modules ou du thème. La page Paramètres avancés >> Informations de votre back-office indique votre version de Prestashop et de PHP, ainsi que la configuration de votre serveur.
Comparez-les avec les versions compatibles indiquées par les auteurs de vos modules et de votre thème. Si votre hébergeur vient de changer de version de PHP, c'est souvent la piste à privilégier.
Conclusion
Une fois la cause identifiée, vous pourrez souvent corriger le problème vous-même : mettre à jour ou désactiver un module, revenir à une version de PHP compatible, restaurer une sauvegarde…
Sinon, vous saurez à qui vous adresser. Contactez l'auteur du module ou du thème en cause en lui transmettant le message d'erreur exact, votre version de Prestashop et de PHP, et les étapes pour reproduire le problème. Il pourra intervenir beaucoup plus rapidement et efficacement.


Aucun commentaire
Commentaires
Cet article a été rédigé il y a plus d'un an. Les commentaires sont fermés.