Comment mettre à jour un Prestashop ?

Pour créer, rédiger et optimiser le SEO de vos pages web --> Contactez-nous


La mise à jour d'un site e-commerce sous Prestashop relève souvent du cauchemar.

Vous avez un site qui fonctionne plus ou moins bien, vous y avez fait des transformations, dans les templates, dans les modules et extensions de Prestashop (que vous avez achetés parfois assez cher) et d'un coup, bim, nouvelle version de Prestashop..

Bien entendu, pas mal de modules ne fonctionneront pas et la mise à jour va vous coûter de l'argent..

Donc vous ne la faites pas, et puis au bout d'un moment, un module important n'est plus maintenu pour VOTRE version de Prestashop ou vous vous retrouvez avec 3 ou 4 mises à jour de retard..

Il ne vous reste plus qu'à passer sous les fourches caudines d'une "agence" qui va vous faire payer le prix fort (sauf si vous connaissez Tubbydev bien sûr :-)).

Voici la bonne méthode pour une mise à jour de Prestashop, organisée, sans dangers de pertes de données.

En ce qui concerne la mise à jour de Prestashop 1.6 à Prestashop 1.7, regardez l'article spécifique à ce sujet

Tout d'abord, 3 principes de base pour une mise à jour Prestashop:

 

1) Le thème peut être à refaire
2) Les modules peuvent ne plus être compatibles (il faut alors soit les adapter/soit en acheter d'autres)
3) Si des modifications ont été effectuées dans le code source de prestashop ou des modules, l'analyse de c qu'il faudra faire est difficile tant qu'on n'a pas les mains dedans..
 
De quoi a-t-on besoin pour cette recette de mise à jour Prestashop ?
 
  • un bon IDE pour travailler sur les fichiers PHP, JS et Smarty (Netbeans n'est pas trop mal)
  • un accès FTP
  • assez d'espace sur l'espace d'hébergement afin d'avoir deux boutiques en même temps.
  • un accès à la base de données (phpmyadmin est suffisant pour des bases de données peu importantes, sinon il faudra passer par la console pour manipuler la base de données)
  • la possibilité de créer une base de données pour la version de secours

Bon maintenant, le boulot.

En premier lieu, on va faire une mise à jour en local.
 
•    Copie de la boutique (fichiers + base de données) en local (ou sur un autre serveur)
◦    Modification du fichier /config/settings.inc.php pour changer la base de données source
•    Modifier dans la base de données l'url de la boutique afin de pouvoir travailler en local (table: prefix_shop_url)
•    Installation du module Mise à jour en 1 clic
◦    Si la mise à jour échoue en mode automatique, il faut alors procéder à une mise à jour manuelle (http://doc.prestashop.com/pages/viewpage.action?pageId=11272350)
 
Mise à jour Prestashop
  • Récupération de la liste des fichiers du mode marqués comme modifiés, par exemple:

Mise à jour Prestashop suite

  • Vérification un à un des fichiers modifiés et préparation d'éventuelles corrections sur les fichiers de la version de mise à jour.
  • Vérification de chaque override afin de voir si elle va être compatible avec la mise à jour. Si il est difficile d'établir un diagnostique, on repère la fonctionnalité ou les objets modifiés afin d'effectuer des tests.
  • Si les sources des modules sont disponibles, il peut être intéressant (et même important) de vérifier si les sources n'ont pas été modifiées directement dans le code source et non dans une surcharge. (C'est dans un monde idéal car en général, il est impossible de se faire fournir des versions originales des modules)
  • Préparation des modifications sur les fichiers (Les conserver dans un répertoire en respectant la structure du prestashop. Il est ainsi possible de les retrouver facilement pour la mise à jour).
  • Penser aussi à lister dans un fichier chaque opération effectuée sur la version locale.
Ensuite, on peut tenter la mise à jour automatique en vérifiant les options de mise à jour (dont notamment la mise à jour du thème/des emails standards).
 
En ce qui concerne les mails, la solution est de conserver les fichiers éventuels modifiés et de les "réinsérer" dans les templates de la nouvelle version.
 
Mise à jour Prestashop maj
 
Il faut aussi penser à configurer la boutique afin que la mise à jour soit possible (penser notamment à la désactivation des caches)
Mise à jour boutique prestashop
 
Le lancement de la mise à jour se fait alors, en priant :-)
Procédure mise à jour Prestashop
 
.. et on attend bien spur que tout soit marqué .. OK :-)

Après la mise à jour, il est possible de consulter l'état de mise à jour des modules (et il est intéressant de conserver la liste des modules mis à jour ou non).

Modules mise à jour Prestashop

Ensuite, on peut:

•    Remettre en place les modifications sur les fichiers/fonctionnalités modifiés avant la mise à jour (core+module)
•    Faire des tests sur chaque fonctionnalité (encore plus quand elle est modifiée par un override ou ajoutée/modifiée par un module)
•    Remettre en place les traductions
•    Tester les modules mis à jour
•    Tester le design/les fonctionnalités ( et la plupart du temps, le thème aura besoin d'être adapté aux changements de Prestashop).

 

Quand tout est ok, on peut (enfin) s'attaquer à la mise à jour de Prestashop sur le site qui est en "production".

Pour ça:

  • Passer la boutique en mode maintenance
  • Copier les fichiers de la boutique dans un autre répertoire sur le serveur
  • Dupliquer la base de données
  • Tester s'il est possible de repartir avec la boutique de secours
  • Si oui, procéder à la mise à jour sur la version de production
  • Mettre en place les fichiers comprenant les modifications
  • Attention, il faut penser à vider le cache (dont class_index.php, qui empêche les overrides de se mettre en place)
  • Effectuer des tests
  • Si les tests ne sont pas concluant, ne pas hésiter à remettre en place la version de sauvegarde car "travailler" sur une version de production est vraiment déconseillé, surtout avec Prestashop.

Savoir à l'avance combien de temps on va passer pour une mise à jour Prestashop est parfois compliqué.

Chez Tubbydev, on essaie quand même de fonctionner au forfait, même si parfois on se fait "avoir" par quelques trucs cachés dans le thème ou le code même de Prestashop à cause de transformations faites "en dur" par de précédents développeurs.

Bref, n'hésitez pas à nous contacter si vous avez une mise à jour Prestashop à faire !

Commentaires sur: Comment mettre à jour un Prestashop ?

Tuto très utile et bien expliqué, merci !

Rédigé par : Agence Web Perpignan | 10 mai 2017 09:57:23

Poster un commentaire sur: Comment mettre à jour un Prestashop ?







« Un bel exemple de phishing avec les impôts | Accueil | Le Netlinking dans le monde moderne: ça marche ? »



Besoin de SEO, de développement, de rédaction de contenu web ? Besoin d'un blog, de Wordpress, de Prestashop ou autres nouvelles "choses web" ? Envie de travailler dans ces domaines ? --> Contactez-nous