Heim >Backend-Entwicklung >PHP-Tutorial >So implementieren Sie einen WooCommerce AJAX Direct „Jetzt kaufen'-Button
Wenn Sie einen Online-Shop mit WooCommerce betreiben, ist es entscheidend, den Kaufprozess so reibungslos wie möglich zu gestalten. Eine effektive Möglichkeit, dies zu erreichen, besteht darin, eine Schaltfläche „Jetzt kaufen“ hinzuzufügen, die es Kunden ermöglicht, ein Produkt direkt zu kaufen, ohne durch mehrere Seiten navigieren zu müssen. Dieser Blog führt Sie durch die Erstellung einer WooCommerce AJAX-Schaltfläche „Jetzt kaufen“ mithilfe der bereitgestellten Code-Snippets.
Zuerst müssen Sie auf Ihren WooCommerce-Produktseiten eine benutzerdefinierte Schaltfläche „Jetzt kaufen“ hinzufügen. Wir tun dies, indem wir uns in die Aktion woocommerce_after_add_to_cart_button einbinden, die unsere Schaltfläche direkt nach der Standardschaltfläche „In den Warenkorb“ platziert.
Hier ist das PHP-Code-Snippet:
add_action( 'woocommerce_after_add_to_cart_button', 'add_content_after_addtocart' ); function add_content_after_addtocart() { $current_product_id = get_the_ID(); $product = wc_get_product( $current_product_id ); if( $product->is_type( 'simple' ) ){ echo '<button data-id="'.$current_product_id.'" class="buy-now button"><i class="matico-icon-toys"></i>'.__('Buy Now', 'woocommerce').'</button>'; } }
Erklärung:
Als nächstes müssen Sie das Skript in Ihr Theme einreihen, um sicherzustellen, dass es ordnungsgemäß auf Ihren WooCommerce-Seiten geladen wird. So geht's:
wp_enqueue_script('matico-child-script', get_stylesheet_directory_uri() . '/assets/js/script.js', array( 'jquery', 'scrollfix-script' ), $matico_version, true); wp_localize_script( 'matico-child-script', 'matico_child_script_obj', array( 'checkout_page_url' => wc_get_checkout_url(), ) );
Erklärung:
Abschließend verarbeiten wir das Schaltflächenklickereignis mit jQuery. Das jQuery-Skript sendet eine AJAX-Anfrage an WooCommerce, das das Produkt in den Warenkorb legt und den Benutzer dann direkt zur Checkout-Seite weiterleitet.
Hier ist der jQuery-Codeausschnitt:
(function ($) { var MaticoChildThemeConfig = { init: function () { this.bindEvents(); }, bindEvents: function () { $(document).on('click', '.buy-now', this.handleBuyNowClick); }, handleBuyNowClick: function (event) { event.preventDefault(); var $button = $(this), quantity = parseFloat($button.closest('.quantity').find('.qty').val()) || 1, productID = $button.data('id'); var data = { product_id: productID, quantity: quantity, }; $.ajax({ type: 'POST', url: wc_add_to_cart_params.wc_ajax_url.toString().replace('%%endpoint%%', 'add_to_cart'), data: data, dataType: 'json', beforeSend: function () { $button.addClass('loading'); }, success: function (res) { if (res.error && res.product_url) { window.location.href = res.product_url; } else { window.location.href = matico_child_script_obj.checkout_page_url; } } }); } }; MaticoChildThemeConfig.init(); })(jQuery);
Erklärung:
Durch die Umsetzung der oben genannten Schritte können Sie eine Schaltfläche „Jetzt kaufen“ erstellen, die den Kaufprozess für Ihre Kunden optimiert. Diese Funktion ist besonders nützlich, um die Conversions zu steigern, indem sie die Anzahl der Klicks und Seiten reduziert, die ein Kunde durchsuchen muss, bevor er einen Kauf abschließt.
Das obige ist der detaillierte Inhalt vonSo implementieren Sie einen WooCommerce AJAX Direct „Jetzt kaufen'-Button. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!