Woocommerce-Kasse im Popup

Lesezeit: 2 Minuten

Benutzer-Avatar
Dmytro Duplyka

Ich versuche, die Checkout-Funktionalität (+ Stripe mit WooCommerce Stripe Payment Gateway-Plugin) in einem modalen Fenster zu implementieren, und ich verwende dafür das Ajax. Hier ist mein Backend-Code, um den Checkout abzurufen/aktualisieren:

add_action('wp_ajax_refresh_checkout', 'getCheckoutPageContentCallBack');
add_action('wp_ajax_nopriv_refresh_checkout', 'getCheckoutPageContentCallBack');

function getCheckoutPageContentCallBack() {
    define('WOOCOMMERCE_CHECKOUT', true);
    echo do_shortcode('[woocommerce_checkout]');
    if (class_exists('WooCommerce')) {
        $wcurl = WooCommerce::plugin_url();

        $credit_card_form_script = file_get_contents($wcurl . '/assets/js/frontend/credit-card-form.min.js');
        if ($credit_card_form_script) {
            echo "<script>";
            echo $credit_card_form_script;
            echo "</script>";
        }

        $checkout_script = file_get_contents($wcurl . '/assets/js/frontend/checkout.min.js');
        if ($checkout_script) {
            echo "<script>";
            echo $checkout_script;
            echo "</script>";
        }
    }
    wp_die();
}

Ich habe alle Skripte der Checkout-Seite eingefügt, erhalte aber immer noch den Fehler:

Bitte geben Sie Ihre Kartendaten ein, um eine Zahlung vorzunehmen. Entwickler: Bitte stellen Sie sicher, dass Sie jQuery einbinden und es keine JavaScript-Fehler auf der Seite gibt.

jQuery ist enthalten und es gibt keine js-Fehler auf der Seite. Die ursprüngliche Checkout-Seite funktioniert einwandfrei. Ich dachte, das Problem sei, dass ich den Zahlungsteil mit diesem Code vom Originalteil entfernt habe:

remove_action('woocommerce_checkout_order_review', 'woocommerce_checkout_payment', 20);
add_action('woocommerce_checkout_order_payment', 'woocommerce_checkout_payment', 20);

Aber das Kommentieren dieser Zeilen brachte mir nichts. Ich habe die Seite bearbeitet, daher ist dies jetzt noch nicht einmal eine Shop-Seite (nur eine Seite mit einer Schleife). Mir ist aufgefallen, dass bei Zahlungen über die Checkout-Seite die erste Anfrage an die geht https://api.stripe.com/v1/tokens mit Kartenanmeldeinformationen geht der nächste an /checkout/?wc-ajax=checkout mit stripe_token Wenn ich also versuche, von meinem Modal aus zur Kasse zu gehen, gibt es keine Anfrage an die Stripe-API, sondern nur an die Kasse. Vielleicht gibt es ein Skript, das ich jedes Mal einfügen muss, wenn ich den Checkout aktualisiere? Ich kann keine Infos darüber finden.

  • Hast du die Lösung??? Wenn Sie die Lösung gefunden haben, teilen Sie sie bitte mit, da ich mit dem gleichen Problem konfrontiert war. Danke im Voraus 🙂

    – Sangrai

    19. September 2017 um 5:17 Uhr


  • Ja, soweit ich mich erinnern kann, bin ich einfach in die Woocommerce-Einstellungen gegangen und habe meine Seite mit dem Modal als Warenkorbseite UND Checkout-Seite festgelegt

    – Dmytro Duplyka

    21. September 2017 um 9:36 Uhr

1377820cookie-checkWoocommerce-Kasse im Popup

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy