2010-10-12 4 views
4

Je n'ai pas été capable de comprendre cela pour la vie de moi. Je voulais montrer l'étape de révision de la commande (dernière étape avant le traitement de la commande) tout de suite sur le paiement d'une page dans Magento. Aucune suggestion? Merci a tous.Magento: Afficher le test Étape en une fois Commander

+0

Souhaitez-vous toujours la révision de la commande à la fin de la commande? –

+0

Eh bien, j'aimerais qu'il apparaisse dans l'espace qu'il est destiné à montrer. Au lieu d'avoir à passer par toutes les étapes pour qu'il apparaisse, il apparaît juste quand la caisse d'une page est chargée. Je sais qu'il est peuplé dans le div # checkout-review-load. Je n'arrive pas à comprendre quel code JS j'ai besoin d'appeler sur le chargement de la page pour l'afficher. – Yock

Répondre

3

Si vous regardez en bas de onepage.phtml, vous verrez

<?php if($this->getActiveStep()): ?> 
    accordion.openSection('opc-<?php echo $this->getActiveStep() ?>'); 
<?php endif; ?> 

qui appelle Mage_Checkout_Block_Onepage::getActiveStep() pour déterminer quelle étape pour montrer d'abord. Vous pouvez remplacer en créant votre propre onepage.phtml dans votre thème et changer le bloc ci-dessus sont:

accordion.openSection('opc-review'); 

Cependant, la fonction openSection exécute uniquement si l'élément cible (« opc-review ») dans ce cas , a une classe de "allow" qui est définie par AJAX de Magento une fois que les étapes de contrôle précédentes sont terminées. Vous pouvez ajouter manuellement la classe "allow" en utilisant le prototype, mais une fois que vous aurez affiché l'étape, vous verrez qu'elle est vide, puisque l'AJAX n'a ​​pas rempli le contenu basé sur les étapes précédentes comme les étapes précédentes t arrivé encore!

Alors ... Vous pouvez créer un nouveau bloc basé sur Cart.php et l'insérer dans onepage.phtml en utilisant $this->getChildHtml('block-id') et la mise en page xml. Vous devrez l'insérer dans la ol#checkoutSteps comme li#opc-summary.section allow ou quelque chose comme ça, et faire les changements js ci-dessus pour être accordion.openSection('opc-summary');

C'est le meilleur que je peux faire pour le moment pour vous. HTH, JD

+0

Cela m'a beaucoup aidé, m'a permis d'aller dans la bonne direction. Merci Jonathan. – Yock

+0

Heureux que cela a aidé. J'ai souvent pensé que ce serait utile, à condition que cela ne détourne pas les clients de la caisse! –

+0

@JonathanDay pouvez-vous également donner des conseils sur la création du bloc pour le contenu à charger dans la section de révision? Quand j'ai essayé ce que je reçois, c'est une page html complète qui contient en-tête footer, css, js tout. Je veux dire la réplique du contenu de la page d'affichage de la page de paiement? – Butterfly

Questions connexes