Magento – Kasse hängt bei Schritt 4 “Zahlungsarten”

Bild

Wir hatten gerade den Fall, dass man in der Kasse / im Checkout von Magento nur bis Schritt 4 “Zahlungsmethode” bzw. “Zahlungsart” kam und dann immer nur “Loading next step” auftauchte wenn man auf Weiter klickte. Man blieb jedoch immer im Schritt 4 hängen.

Seit SUPEE 9767 gibt es ja die Formkey Validation (die man im Backend unter System > Konfiguration > Erweitert / Admin / Sicherheit – Enable Form Key Validation On Checkout de-/aktivieren kann).

Aus Sicherheitsgründen macht es wohl Sinn diese Funktion zu verwenden – das eigene Template muss es aber auch tun. Daher steht unter der Funktion auch “Important! Enabling this option means that your custom templates used in checkout process contain form_key output. Otherwise checkout may not work.”.

Man muss also sicherstellen, dass folgende Zeile in den vom Template geladenen Kassen-Dateien liegt:

<?php echo $this->getBlockHtml('formkey') ?>

Am besten immer vor dem schließenden

</form>

Einige der zu berücksichtigenden Dateien sind

  • app/design/frontend/[Eigenes Theme]/[Eigenes Theme]/template/persistent/checkout/onepage/billing.phtml
  • app/design/frontend/[Eigenes Theme]/[Eigenes Theme]/template/checkout/onepage/shipping.phtml
  • app/design/frontend/[Eigenes Theme]/[Eigenes Theme]/template/checkout/onepage/shipping-method.phtml
  • app/design/frontend/[Eigenes Theme]/[Eigenes Theme]/template/checkout/onepage/payment.phtml

Dies kann in einzelnen Fällen (wovon wir gerade einen hatten) aber weiterhin zu Problemen führen. Wir kamen nämlich trotz des eingefügten Codes bei Schritt 4 “Zahlungsart” nicht weiter.

Die Lösung lag darin, dass wir für unser Theme noch eine eigene opcheckout.js im Ordner skin/frontend/[Eigenes Theme]/[Eigenes Theme]/js verwendeten. Hier muss der Key ebenso angesprochen werden. Dazu sucht man in der eigenen JS-Datei nach

if (elements[i].name=='payment[method]') {

und ersetzt dies durch

if (elements[i].name=='payment[method]' || elements[i].name == 'form_key') {

Nun funktionierte der Kassenbereich bis zum Ende problemlos.

Genutzt in Magento Version 1.9 Kommentare? Ergänzungen? Hinweise? Gerne!

Published by Covos

Seit 2009 arbeite ich nun intensiv mit Magento. Begonnen habe ich mit der Erstellung und dem Betrieb von B2C-Shops. Ausgeweitet wurde dies durch meine Tätigkeit im Logistik-Sektor. Hieraus entstanden erste spezialisierte B2E-Systeme. Heute arbeite ich tag-täglich mit spannenden B2C-, B2B- und B2E-Projekten und berichte in diesem Blog über Herausforderungen und gebe Insider-Tipps.

Leave a Reply

Your email address will not be published. Required fields are marked *