Migration PrestaShop 8.2.x vers 9.x : guide technique complet

Logo Prestashop

1. Préparation : environnement, exigences et sauvegardes

Exigences techniques :

  • PHP ≥ 8.2 (recommandé : 8.4)
  • MySQL ≥ 8.0 ou MariaDB ≥ 10.5
  • Symfony 6.4
  • Extensions PHP : intl, mbstring, zip, curl, gd, DOM, PDO

Sauvegardes à effectuer :

  • Dossier /modules/, /themes/, /img/, /upload/, /override/
  • Base de données via mysqldump

Environnement de staging : toujours migrer sur une copie isolée avant la production.

2. Compatibilité des modules et thèmes

Modules : vérifier la compatibilité via Addons Marketplace ou documentation officielle.

Thèmes : refonte possible si basés sur Bootstrap 4. Utiliser Colibri ou créer un thème enfant compatible Twig/Webpack Encore.

3. Migration technique : fichiers et base

Remplacement du core :

  1. Supprimer les fichiers du core sauf modules, img, themes, upload.
  2. Télécharger la version 9.x depuis prestashop.com ou GitHub.
  3. Copier les nouveaux fichiers dans le dossier du site.

Mise à jour de la base :

/install/upgrade/upgrade.php

Vérifier ensuite dans la BDD :

SELECT version FROM ps_configuration WHERE name = 'PS_VERSION_DB';

4. Ajustements post-migration

  • Vider le cache : rm -rf var/cache/*
  • Rafraîchir les modules : php bin/console prestashop:modules:refresh
  • Permissions : chown -R www-data:www-data . et chmod -R 755 .

5. Recette technique et fonctionnelle

  • Tester le tunnel de commande complet
  • Vérifier le fonctionnement des modules de paiement et de livraison
  • Valider la génération de PDF (factures)
  • Tester la langue, devises, emails SMTP

6. Mise en production

  • Reproduire la migration en production
  • Activer le mode maintenance ou rediriger en 503
  • Appliquer les changements, vider le cache, réactiver les modules

Bonnes pratiques

  • Pas de migration directe sur le site en ligne
  • Documenter tous les modules personnalisés modifiés
  • Utiliser Git pour tracer les modifications
  • Superviser la boutique avec WAF ou agent HIDS comme Wazuh

Conclusion : la migration vers PrestaShop 9.x est une opération méthodique. Elle offre des gains de performance et de sécurité importants, mais doit être testée de manière rigoureuse avant d’être mise en production.