¿Pago de una página roto en 1.8?


12

Nuestro pago parece estar roto y más personas parecen tener el problema con magento 1.8. Simplemente no hace nada después de presionar el botón continuar en el paso 4. Ejecutamos PHP 5.4.19 y lo hemos probado en chromium v28, firefox v22, safari v5.1.

No hay errores en los registros y es lo mismo en el tema predeterminado.

Respuestas:


15

Encontré la solución aquí: http://www.magentocommerce.com/boards/viewthread/441003/#t460203

Vaya a / app / design / frontend / base / default / template / checkout / onepage / file payment.phtml ábralo, línea 36

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

agregar id al conjunto de campos

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

Gracias a hungtk2707!


2
Si no ha realizado ninguna modificación de código y sus módulos de terceros están a la altura, la mayoría de los problemas de actualización provienen de plantillas y diseños desarrollados para versiones anteriores. A menudo se trata de trabajar a través de las plantillas en el área que falla y verificar las diferencias de código entre lo que está en su plantilla y lo que está en la plantilla base recién instalada. En los diseños, a menudo se busca un bloque movido, un nuevo bloque que debe agregarse o similar. Como muestra su publicación, agregaron una identificación al conjunto de campos que el javascript necesita para referencia para pasar al siguiente paso.
Fiasco Labs

2
Acababa de instalar una versión limpia de magento 1.8.1, y esto parece ser un error en el código. Debe incluirse en el archivo base de phtml.
Masu

1
me salvas la vida + 1
Ram Sharma

5

También tuve el problema de pago y encontré la solución:

En /template/checkout/onepage/review/info.phtml (al final)

reemplazar

review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder') ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));

por

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'));

Debería resolver su problema de pago.


1
Parece que su código de muestra está incompleto. Edite para incluir el formato de Markdown adecuado.
Benmarks

Esto resolvió mi problema donde al presionar confirmar obtendría un 302 de regreso y el formulario no se enviaría.
woot586

2

Si actualiza su Magento (a 1.9.1) y la plantilla de pago se personaliza y también se cambia el xml.

El aspecto de esto:

<block type="checkout/onepage_payment" name="checkout.onepage.payment" as="payment" template="checkout/onepage/payment.phtml">
     <block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/methods.phtml">
          <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
     </block>
</block>

El problema es checkout / onepage / payment / method.phtml, estos datos deben cargarse mediante una solicitud ajax. Reemplace esto con checkout / onepage / payment / info.phtml, así:

<block type="checkout/onepage_payment" name="checkout.onepage.payment" as="payment" template="checkout/onepage/payment.phtml">
     <block type="checkout/onepage_payment_methods" name="checkout.payment.methods" as="methods" template="checkout/onepage/payment/info.phtml">
          <action method="setMethodFormTemplate"><method>purchaseorder</method><template>payment/form/purchaseorder.phtml</template></action>
     </block>
</block>

1

si su plantilla no tiene review = en la parte inferior de info.phtml simplemente agregue

</script>
<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>

al final de este archivo, p. ej ./app/design/frontend/blank/default/template/checkout/onepage/review/info.phtml


1

Tuve el mismo problema con rwd (iphone) storeview y resolví el primer problema con

pero luego aún tuve un problema (el botón continuar no funciona) La solución fue recopilar info.phtml de / app / design / frontend / default / iphone / template / checkout / onepage / review

He tomado de una antigua versión de trabajo.

El hecho extraño es que todo funcionó bien en la vista de escritorio.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.