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

Passer d’une boutique PrestaShop 1.7.0 à la version 1.7.8

Rester en 1.7.0 alors que l’hébergeur retire PHP 7.1, 7.2 ou 7.3 de son offre bloque la boutique : seule la 1.7.8 supporte PHP 7.4 côté 1.7.

Décrire mon problème Discuter sur WhatsApp

Les signes qui montrent que c’est cette migration-là qu’il faut faire

  • Votre hébergeur annonce la fin du support de PHP 7.1, 7.2 ou 7.3 dans les semaines qui viennent, et ne propose plus que PHP 7.4 ou supérieur.
  • Après un changement de PHP imposé par l’hébergeur, le back-office ou le front affiche une erreur fatale Smarty, sans qu’aucun module n’ait été touché.
  • Votre boutique tourne encore en 1.7.0, 1.7.1 ou une sous-version antérieure à 1.7.5, et vous ne savez pas jusqu’où elle peut monter en PHP sans changer de sous-version.
  • Un prestataire ou un hébergeur a proposé de passer directement en PHP 8 sans changer de version PrestaShop pour résoudre un problème d’hébergement.

Ce que change réellement ce passage à l’intérieur de la branche 1.7

Contrairement à un passage vers 8 ou 9, la migration de 1.7.0 vers 1.7.8 reste dans la même branche majeure : l’architecture hybride Smarty/Symfony, le thème Classic et la structure de base ne changent pas. Ce n’est pourtant pas cosmétique, car l’enjeu est la compatibilité PHP. Les sous-versions 1.7.5 à 1.7.8 sont les seules à supporter PHP 7.2 ; parmi elles, seule la 1.7.8 supporte PHP 7.4. Une boutique restée en 1.7.0 à 1.7.4 ne fonctionne pas sous PHP 7.4 : ce n’est pas une question de modules incompatibles, c’est le cœur de PrestaShop qui n’est pas prévu pour cette version.

C’est concret quand un hébergeur retire les anciennes versions de PHP de son offre, ce qui arrive à mesure que PHP 7.1, 7.2 et 7.3 sortent de maintenance côté éditeur. Si la boutique n’est pas au moins en 1.7.8 quand l’hébergeur coupe les versions antérieures à 7.4, elle ne redémarre plus.

Un point à garder en tête : passer en 1.7.8 ne règle le problème que temporairement. Aucune sous-version 1.7, pas même la 1.7.8, ne fonctionne sous PHP 8. La ligne 1.7.8.x est passée en maintenance de sécurité après la sortie de PrestaShop 8, et cette phase s’est arrêtée à la sortie de PrestaShop 9 : elle n’est plus couverte aujourd’hui. La 1.7.8 est une étape de transit vers PHP 7.4, pas une solution durable.

Comment je traite cette mise à jour mineure

  1. Vérification de la sous-version exacte

    Je vérifie la sous-version 1.7 exacte de la boutique et la version PHP actuelle et cible chez l’hébergeur, pour savoir jusqu’où monter.

  2. Sauvegarde complète

    Dump SQL et copie complète des fichiers avant toute intervention, même pour une mise à jour mineure : le risque est plus faible que sur un saut majeur, mais pas nul.

  3. Mise à jour via le module autoupgrade

    Je fais monter la boutique jusqu’à la 1.7.8 avec autoupgrade, qui gère aussi bien les mises à jour mineures que les sauts de version majeure.

  4. Test sur copie et contrôle des modules

    Quand le délai le permet, je teste d’abord la mise à jour sur une copie de la boutique ; sinon je limite le risque en travaillant hors des heures de forte fréquentation. Je vérifie aussi que les modules installés déclarent une compatibilité couvrant la 1.7.8 : certains éditeurs ont figé leur déclaration sur une sous-version antérieure sans que le code pose réellement problème.

  5. Planification de la suite

    Une fois la 1.7.8 stabilisée sous PHP 7.4, je prépare avec vous la vraie migration vers PrestaShop 8, seule façon d’obtenir la compatibilité PHP 8.

Comment je vérifie qu’il n’y a rien de perdu

Même sur une mise à jour mineure, je compare les volumes de commandes, clients et produits avant et après, pour m’assurer qu’autoupgrade n’a rien laissé de côté. Je teste le tunnel de commande et l’affichage des pages principales sous la nouvelle version PHP, et je surveille le journal d’erreurs PHP les jours suivants, pour repérer un module qui fonctionnait sous l’ancienne sous-version mais tousse sous PHP 7.4.

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 est la version actuelle ?
Vers quelle version souhaitez-vous aller ?
Quelle est la taille du catalogue ?

C’est le premier facteur de durée d’une migration, avant même le nombre de modules.

La boutique utilise-t-elle beaucoup de modules tiers ou personnalisés ? (facultatif)

Chaque module non natif doit être vérifié, remplacé ou réécrit pour la version cible.

Qu’est-ce qui doit impérativement être conservé ? (facultatif)
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

Pourquoi mon site plante-t-il d’un coup alors que je n’ai rien changé sur la boutique ?
Parce que votre hébergeur a changé quelque chose : il a retiré les anciennes versions de PHP. Si votre boutique est restée en 1.7.0 à 1.7.5, elle n’a jamais été prévue pour PHP 7.4 ; seule la 1.7.8 le supporte.
Passer en 1.7.8 me met-il à l’abri durablement ?
Non. La 1.7.8 débloque PHP 7.4, mais aucune sous-version 1.7 ne fonctionne sous PHP 8, et la ligne 1.7.8 n’est plus maintenue depuis PrestaShop 9. C’est une étape de transit, pas un point d’arrivée : prévoyez la migration vers 8 dans la foulée.
Puis-je passer directement en PHP 8 sans changer de version PrestaShop ?
Non, ça ne fonctionne pas : aucune version 1.7.x ne tourne sous PHP 8, Smarty plante immédiatement. Il faut d’abord migrer vers PrestaShop 8.
Cette mise à jour va-t-elle changer l’apparence de ma boutique ?
Non, dans la branche 1.7 le thème Classic et son fonctionnement ne changent pas. Cette mise à jour ne touche ni le design ni les URLs.