Migration vers Magento 1.8 1/2 …

Bonjour,

Comme j’ai indiqué précédemment dans mes articles, j’utilise Magento pour ma boutique e-commerce en ligne et une nouvelle version 1.8 vient de sortir !

J’ai testé la mise à jour sur mon système de test et les premiers problèmes arrivent : le paiement (checkout) ne marche plus ! Un conseil en passant, ne jamais tester une mise à jour en production ! Toujours tester sur un système de test.

Le problème semble venir de mon template !

En recherchant sur Internet, je trouve une solution et il faut remplacer (vers la ligne 36):
/app/design/frontend/default/mystockphoto18/template/checkout/onepage

<fieldset>
<?php echo $this->getChildHtml('methods') ?>
</fieldset>

Par
<fieldset id="checkout-payment-method-load">
<?php echo $this->getChildHtml('methods') ?>
</fieldset>

Mais dans mon cas, cela ne résout pas mon problème.

Je décide donc de faire une comparaison du template livré par défaut et le mien:

$ diff -bur base/default/template default/<templatename>/template
Je trouve une différence majeur dans le fichier (à la fin): 
<template>/template/checkout/onepage/review/info.phtml
<script type="text/javascript">
 //<![CDATA[
 review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder', array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
 //]]>
 </script>

Et j’avais:

<script type="text/javascript">
 //<![CDATA[
 review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder') ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
 //]]>
 </script>

Bingo ! C’était bien là le problème et maintenant le checkout fonctionne !

J’ai fait les modifications dans un nouveau template.

Maintenant que nous avons testé, il faut faire la mise à jour !

Je publierai la suite quand la mise à jour sera faite…

Voir le lien vers ma boutique : MyStockPhoto !

N’hésitez pas à me laisser un commentaire si vous avez des questions,

Voila,

Nicolas Portais
Auteur Photographe

Ce contenu a été publié dans Magento, avec comme mot(s)-clé(s) , , , , , , , . Vous pouvez le mettre en favoris avec ce permalien.

4 réponses à Migration vers Magento 1.8 1/2 …

  1. certtone dit :

    Bonjour,

    Vu que j’ai rencontré le même souci et je l’ai resolu de la même façon, j’ai aussi ce probleme si au cas ou il y a une solution connnu… :

    Voici mon problème :

    – Depuis la MAJ 1.8 de Magento…
    – Coté Admin (exemple à la création d’un produit)
    – ou bien coté Frontend ( genre choix de la région ou bien oublié de remplir un champs).

    Alors il est impossible de poursuivre l’action / le formulaire.

    Un exemple détaillé :
    – client choisi des produits
    – au moment de saisir les infos, il oublie de saisir son numéro de téléphone
    – il fait suivant
    – magento indique au niveau du téléphone : Ce champ est obligatoire
    – client rempli le téléphone et fais suivant

    >> rien ne change…. on ne peut plus passer à l’étape suivant. Il faut faire F5 pour tout refaire.

    Merci

    • admin dit :

      Bonjour,

      Cette partie de code est asynchrone et pas simple à débugger … j’ai testé php en mode débug via Eclipse mais c’est inexploitable.

      Le template appelle en AJAX /Mage/Checkout/Model/Type/Onepage.php et si il y a un bug, rien ne s’affiche et il ne se passe rien … c’était mon cas.

      J’ai utilisé Firebug pour tracer les échanges réseaux puis en appelant directement l’URL cible, on peut obtenir des traces.

      J’ai également remarqué des changements au niveau de l’inscription et la version 1.8 n’utilise plus le même template … sans que je sache réellement pourquoi.

      En 1.7.0.2, le template checkout/onepage/billing.phtml était utilisé

      mais maintrenant, il utilise : persistent/checkout/onepage/billing.phtml

      Le mieux est de reproduire sur un système de test.

      Voila,

      En espérant que celui puisse t’aider.

      Nicolas

  2. admin dit :

    Une précision concernant le mode débug sous éclipse : la difficulté est de trouvé un point d’arrêt dans tout ce code PHP mais c’est faisable et j’avais réussi de faire du pas à pas lors du checkout.

  3. certtone dit :

    Bonjour,
    Merci pour vos informations, mais je n’ai pas réussi a debuggé mon souci…
    Je vais refaire une install complete avec une importation produit et non d’un backup pour voir.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha (solve the arithmetic equation) * Time limit is exhausted. Please reload CAPTCHA.