Contenu

Mise à jour automatique

PrestaShop s'est vu adjoindre un outil de mise à jour automatique dans les versions 1.4.4 et 1.4.4.1, qui est ensuite devenu un module pouvant fonctionner avec les versions plus anciennes (à partir de la 1.3) et les plus récentes (dont la 1.5).

Elle permet aux propriétaires de boutiques de sauvegarder et mettre à jour leur site en quelques clics, et ce sans connaissance technique.

Vous ne devriez jamais mettre à jour votre boutique directement. L'outil de mise à jour automatique peut ne pas fonctionner dans certaines situations, et il se peut que vous ne puissiez pas revenir en arrière.

La méthode la plus sûre consiste à avoir à disposition une copie exacte de votre boutique, que ce soit sur votre propre ordinateur ou dans un autre dossier de votre hébergement web. Cette copie doit contenir tous vos produits, vos catégories, vos thèmes, vos modules, vos traductions, vos réglages, etc.

Faites une mise à jour d'essai sur cette copie de votre boutique. Une fois la mise à jour faite, parcourez toutes les pages de votre front-office et de votre back-office afin de vous assurer que tout est bien à sa place. Si ce n'est pas le cas, alors l'outil de mise à jour automatique fonctionne mal avec votre configuration. Vous pouvez utiliser la méthode de mise à jour manuelle, qui est normalement déconseillée et prend beaucoup plus de temps, mais qui peut marcher dans votre situation.

Télécharger et installer le module "Mise à jour en 1 clic"

Assurez bien que vous utilisez la dernière version du module "Mise à jour en 1 clic" :

  • PrestaShop 1.3 & 1.4 : vérifiez le numéro de version dans l'onglet "Modules", puis comparez-le à celui en ligne sur le site Addons (voir ci-dessous). Si les numéros de versions diffèrent, téléchargez-le et mettez-le à jour.
  • PrestaShop 15. : PrestaShop vérifiera automatiquement l'existence de nouvelles versions de vos modules sur le site Addons. Si une nouvelle version est disponible, PrestaShop affichera le bouton "Mettre à jour !" à côté du bouton "Installer/Désinstaller". Cliquez-le pour que PrestaShop télécharge et mette à jour le module pour vous.

Suivez simplement le processus normal d'installation d'un module PrestaShop :

  1. Téléchargez le module 1-Click Upgrade depuis PrestaShop Addons : http://addons.prestashop.com/fr/outils-administration-modules-prestashop/5496-autoupgrade.html sur votre ordinateur.
  2. Dans le back-office de PrestaShop, allez dans la page "Modules" du menu du même nom.
  3. Cliquez sur le bouton "Ajouter un module", situé en haut à droit de la liste des modules disponibles.

    Si vous mettez à jour à partir de la version 1.4, cliquez sur le lien "Ajouter un module depuis mon ordinateur", situé en haut à gauche.

  4. Dans le formulaire qui s'ouvre, cliquez sur le bouton "Naviguer...", puis trouver et sélectionner le fichier Zip du module qui vous venez de télécharger.
  5. Cliquez sur le bouton "Mettre ce module en ligne". PrestaShop enverra le module sur votre serveur, le décompressera, et placera ses fichiers dans le dossier /modules.

Le module est maintenant disponible dans votre liste de modules, mais il vous faut encore l'installer :

  1. Dans la page des modules, trouvez le module "Mise à jour en 1 clic" : saisissez "Mise à jour en 1 clic" ou "autoupgrade" dans le moteur de recherche de modules (pas dans le moteur de recherche global situé en haut de l'écran). Un lien direct vers le module devrait apparaître dès les premières lettres. Cliquez-le.
  2. PrestaShop affiche ensuite le module dans la liste principale.
  3. Cliquez sur le bouton "Installer" du module.

Le module est maintenant prêt à être configurer et utiliser.

L'écran de configuration

L'écran de configuration du module s'ouvre à partir de la liste de modules, en cliquant sur le lien "Configuration" du module.

L'écran de configuration peut également se trouver :

  • PrestaShop 1.4 : sous l'onglet "Outils", dans le sous-onglet "1-Click Upgrade".
  • PrestaShop 1.5 : dans le menu "Paramètres avancés", page "1-Click Upgrade".

Cet écran vous présente une série de section, vous donnant accès et des informations, des outils et de réglages.

Bienvenue

Cette courte section sert de rappel : une mise à jour n'est jamais totalement sûre, et vous devriez donc vous assurez avant toute chose d'avoir à votre disposition une sauvegarde complète et récente de vos fichiers et vos données. Ainsi, si la mise à jour devait échouer, vous seriez toujours en mesure de remettre votre boutique dans son état initial – moyennant un peu de travail pour remettre en place vos fichiers et données sauvegardés.

Notez que le module de mise à jour réalise ses propres sauvegardes afin de vous permettre de revenir en arrière après une mise à jour. Nonobstant, vous devriez toujours faire vos propres sauvegardes.

La liste des points à vérifier avant la mise à jour

La section "La liste des points à vérifier avant la mise à jour" vous donne de précieuses informations sur votre installation actuelle de PrestaShop, et la manière dont elle pourrait fonctionner avec l'outil de mise à jour. Vous devez vous assurer que les différents points de contrôle sont validés avant de lancer la mise à jour.

Tous les indicateurs doivent être au vert pour que la mise à jour puisse fonctionner. Autrement, le bouton de mise à jour n'apparaîtra pas.

Lorsque votre boutique est hébergée sur votre serveur local (http://localhost ou http://127.0.0.1), le module de mise à jour automatique comprend que le mode maintenance n'est pas nécessaire, étant que personne autre que vous n'a accès au site. De fait, même si vous n'êtes pas en mode maintenance, le module indique ce test comme étant validé.

Commencer la mise à jour

Cette section compare votre version de PrestaShop avec la dernière en date. Vous pouvez d'un coup d'oeil si vous avez besoin de faire une mise à jour ou non. Si vous savez qu'une nouvelle version plus récente que celle présentée est disponible, vous pouvez déclencher une nouvelle vérification de version en cliquant sur le bouton "Vérifier si une nouvelle version est disponible".

Par défaut, l'outil de mise à est réglé pour passer votre boutique à la version mineure suivante. Cela signifie que si vous utilisez une version de la branche 1.4.x, l'outil ne vous proposera par de passer à la dernière version 1.5.x, mais à la dernière version 1.4.x. De fait, si vous voulez passer de la version 1.4.x à la dernière version 1.5.x, vous devez cliquer sur le bouton "Plus d'options (mode expert)". Cela ouvrira une nouvelle section, nommée "Mode expert", où vous pouvez choisir le canal de distribution à partir duquel vous voulez faire la mise à jour.
Cette section se révèle également très utile lorsque vous voulez passer à une version autre qu'une version stable (par exemple, un version, beta, RC, voire alpha).

Avant de lancer la mise à jour, vous devez vous assurer de bien comprendre les réglages. Les sections "Options de sauvegarde" et "Options de mise à jour", placées en bas de la page (et sont décrites plus loin dans ce chapitre). Faites en sorte de bien toutes les prendre en compte.

Mode expert

Cette section vous permet de cibler exactement vers quelle version vous souhaitez mettre à jour votre installation actuelle de PrestaShop.

Les options sont :

Comparaison des versions

Pour les plus curieux d'entre vous, cette section affiche le nombre de différences entre votre version actuelle et la version du canal choisi.

Dans le cas où vous avez fait des modifications aux fichiers mêmes de PrestaShop au lieu de passer par de codes d'override, cette liste peut vous aider à savoir si vos modifications sont en sécurité ou non.
Dans tous les cas, vous pouvez pérenniser vos modifications en les plaçant dans des fichiers d'override. Lisez la documentation pour les développeurs si vous désirez plus d'information.

Restaurer

Cette section n'apparaît qu'une fois qu'une mise à jour a déjà était faite.

Voir ci-dessous.

Options de sauvegarde

Ces options vous permettent de mieux contrôler le processus de sauvegarde :

Options de mise à jour

Ces options vous permettez de mieux contrôler le processus de mise à jour :

Le processus de mise à jour

Une fois tous les indicateurs au vert dans la section "La liste des points à vérifier avant la mise à jour", le bouton de mise à jour apparaît dans la section "Mise à jour", accompagné d'une indication de la version de Smarty que vous utilisez, l'adresse web à partir de laquelle la nouvelle version sera téléchargée.

Cliquez sur le bouton "Mettre PrestaShop à jour maintenant !" pour lancer le processus.

Une fois le processus lancé, la page de configuration est remplacée par deux sections : "Journal d'activité" et "Restaurer".

Le journal d'activité vous donne une liste détaillée de ce que l'outil de mise à jour est en train de faire, dans une section que vous pouvez faire défiler:

Le journal d'activité mentionne de nombreux fichiers tout du long du processus. Vous n'avez pas à lire toutes ces notifications, elles ne sont là que pour vous aider en cas d'erreur.

Vous saurez que le processus est terminé quand apparaîtra en vert le message "Mise à jour terminée. Vous devez maintenant vérifier que votre boutique est toujours fonctionnelle (affichage du thème, test de commande en tant que client, ...)", accompagné d'une dernière entrée en journal : "Fin du processus".
L'outil de mise à jour vous indique par ailleurs que vous devez réactiver votre boutique, mais avant cela, faites en sorte de vérifier que tout fonctionne correctement dans votre back-office : pas d'erreur, tous les produits et catégories sont en place avec leurs images et fichiers attachés, etc. Tant que vous n'avez pas fait cette vérification, il vaut mieux ne pas rouvrir l'accès à votre site.

Au premier chargement, les pages peuvent paraître mal organisées : votre navigateur conserver les fichiers dans un cache, et il est probable qu'il affichera la nouvelles interface avec les anciens fichiers CSS. Pensez donc bien à recharger la page plusieurs fois, ou même directement à vider votre cache navigateur, jusqu'à obtenir l'interface attendue.

Lorsque vous passez de la version 1.4 à la version 1.5, vos menus ne seront pas rangés de la même manière qu'ils le seraient si vous aviez fait directement une installation de la version 1.5.

Cela tient au fait que les onglets de PrestaShop 1.4 ont été réorganisés en menus pour la 1.5, et que de nombreuses ont été déplacées afin de créer des menus cohérents. Par ailleurs, l'outil de mise à jour part du principe que vos onglets 1.4 ont pu être personnalisés ou déplacés, que ce soit par vous-même ou par l'action d'un module. De fait, plutôt que de supprimer les réglages en place, l'outil de mise à jour prend les onglets tels qu'il les trouve, et ne les réorganise pas dans l'ordre par défaut des menus de la 1.5.

Si vous souhaitez modifier la position des pages d'un menu une fois que vous avez mis à jour en 1.5, allez dans la page "Menus" du menu "Administration", et réarrangez les pages.

Une fois que vous vous êtes assuré que votre installation de PrestaShop fonctionne correctement, vous pouvez réactiver la boutique à l'aide de l'option dans la page "Maintenance" du menu "Préférences", puis faites des tests sur votre front-office : parcourez les produits, triez-les, essayez d'en acheter un, etc. Bref, lancez-vous dans un processus complet d'achat, afin de vous assurer que vous n'allez pas perdre des ventes.

Tout fonctionne-t-il correctement ? Félicitations, vous disposez désormais d'une installation de PrestaShop à jour !

Sur certaines configurations serveur, un message d'erreur peut apparaître, disant "Erreur Javascript (parseJSON) détectée pour l'action "upgradeNow". Début de la restauration ..."

Pour résoudre ce problème, suivez ces étapes :

  • Ouvrez votre fichier php.ini et activez (décommentez) les extensions MySQLi et MySQL PDO. Si vous n'avez pas accès au fichier php.ini, contactez votre hébergeur à ce propos.
  • Ouvrez le fichier /modules/autoupgrade/db/Db.php et trouvez ces lignes (autour de la ligne 210) :

    public static function getClass()
    {
        $class = 'MySQL';
        /*if (PHP_VERSION_ID >= 50200 && extension_loaded('pdo_mysql'))
            $class = 'DbPDO';
        else if (extension_loaded('mysqli'))
            $class = 'DbMySQLi';*/
        return $class;
    }

    Décommentez simplement ces lignes (retirez /* et */). Elles devraient ressembler à cela :

    public static function getClass()
    {
        $class = 'MySQL';
        if (PHP_VERSION_ID >= 50200 && extension_loaded('pdo_mysql'))
            $class = 'DbPDO';
        else if (extension_loaded('mysqli'))
            $class = 'DbMySQLi';
        return $class;
    }

Ceci fait, relancer le processus de mise à jour automatique.

Revenir à la version précédente : la section restauration

Malheureusement, toutes les mises à jour ne se terminent pas par un succès – et c'est bien pourquoi vous devriez toujours faire une sauvegarde de vos données et fichiers, et pourquoi PrestaShop réalise une sauvegarde supplémentaire sur lesdits fichiers et données lui-même (sur laquelle vous ne devriez pas forcément compter, évidemment. Faites vos propres sauvegardes).

Les sauvegardes de PrestaShop sont stockées sur votre serveur, et s'il se trouve que votre mise à jour s'est mal déroulée, vous pouvez les retrouver dans la section "Restaurer" de la page de configuration du module de mise à jour.
Les fichiers de sauvegarde sont créés dès que le processus de sauvegarde est lancé, et sont disponibles aussitôt, dans la liste "Choisissez votre sauvegarde".
Choisissez la plus récente. La date et l'heure de la création du fichier de sauvegarde sont directement dans son nom : Vversion-date-heure-hasard, par exemple "V1.4.9.0_20120907-114024-f85f41a" pour une sauvegarde d'une installation précédente de PrestaShop 1.4.9, réalisée le 7 septembre 2012 à 11 h 40 min 24 s.

Le bouton "Restaurer" déclenche deux actions :

Sélectionnez l'archive de sauvegarde vers laquelle vous souhaitez revenir, et cliquez sur le bouton "Restaurer". Comme pour le processus de mise à jour, l'interface entière disparaît pour ne laisser que le "Journal des activités" et la section "Restaurer". Vous pouvez suivre le processus de restauration en parcourant le journal. Une fois la mise à jour terminée, rechargez la page pour vérifier que tout est bien revenu à sa place.