Ich habe diesen extrem seltsamen Fehler, der nur passiert, wenn Leute versuchen zu bestellen. Gäste kommen auf unsere Seite und fügen Sachen in ihren Warenkorb hinzu. Dann gehen sie zur Kasse. Beim Checkout, wenn sie auf Paypal klicken, erhalten sie den folgenden Fehler: "Wir konnten Ihre Bestellung nicht verarbeiten, bitte versuchen Sie es erneut.". Beim erneuten Laden der Seite ist der Fehler jedoch verschwunden, wenn sie versuchen, erneut zu prüfen. Keine Plugins oder Themen sind widersprüchlich, da ich alle überprüft habe.Fehler beim Auschecken - Wordpress
Ich habe einige Debugging und ich bemerkte, dass der Grund, warum der Fehler ausgelöst wird, ist wegen der Funktion: wp_verify_nonce()
Ich habe einige weitere Debugging und fand heraus, dass während der ersten Zeit der Benutzer versucht, die oben genannte Funktion ausprobiert wird aufgerufen. Und gibt false zurück, weil die Nonce im Vergleich zum aktuellen Hashwert anders ist. Bei der zweiten Überprüfung gibt die obige Funktion jedoch wahr zurück, weil die Nonce korrekt ist. Dies bedeutet, dass mein Nonce beim ersten Mal falsch ist. Weiß jemand warum?
Ich erhalte dieses Problem auf die folgende Funktion: process_checkout()
Wenn der folgende Befehl ausgeführt wird:
if (empty($_POST['_wpnonce']) || ! wp_verify_nonce($_POST['_wpnonce'], 'woocommerce-process_checkout')) {
WC()->session->set('refresh_totals', true);
throw new Exception(__('We were unable to process your order, please try again.', 'woocommerce'));
}
ich mein Bestes versucht, mein Problem zu erklären, aber nicht jeder wissen, warum meine nonce während der Prüfung falsch ist zum ersten Mal?
Könnte möglicherweise mein Thema sein. Alles was ich suchen sollte? Das einzige andere Plugin, das wir verwenden, das mit woocomerce verwandt ist, ist woocheckout. – Danny
Ich würde versuchen, das Plugin vorübergehend zu deaktivieren und festzustellen, ob das Problem weiterhin besteht. Auch würde ich versuchen, ein anderes Thema vorübergehend zu verwenden, um zu identifizieren, was das Problem verursacht. –
Beachten Sie auch: Es könnte Plugins sein, die nichts mit WooCommerce zu tun haben, die das Problem verursachen, weil 'wp_nonce' für viele Zwecke verwendet werden. –