Verschiebt das Coupon-Formular vor die Zwischensumme in der WooCommerce-Kasse

Lesezeit: 2 Minuten

Verschiebt das Coupon Formular vor die Zwischensumme in der WooCommerce Kasse
Ludwig

In meinem untergeordneten Storefront-Theme versuche ich auf der Checkout-Seite, den Gutscheincodeblock direkt über die Warenkorbsummen und unter die Artikelbewertung zu verschieben
Geben Sie hier die Bildbeschreibung ein

Ich sehe hinein review-order.php dass der folgende Haken genau an der richtigen Stelle ist:

do_action( 'woocommerce_review_order_after_cart_contents' );

Also habe ich in der Datei functions.php Folgendes hinzugefügt:

remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_review_order_after_cart_contents', 'woocommerce_checkout_coupon_form' );

Aber der Coupon-Block erscheint zweimal … und über der Bestellübersicht statt darunter.

Geben Sie hier die Bildbeschreibung ein

1646256547 344 Verschiebt das Coupon Formular vor die Zwischensumme in der WooCommerce Kasse
LoicTheAztec

Aktualisierung 2021 Verwendung: Verschiebt das Coupon-Formular vor den Zahlungsabschnitt in der WooCommerce-Kaufabwicklung

Als Haken woocommerce_review_order_after_cart_contents befindet sich in einer HTML-Tabelle zwischen </tr> und </tbody> Tags, daher muss es in einer bestimmten HTML-Struktur angezeigt werden, um Ihr Problem zu vermeiden.

Folgendes wird das tun:

remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_review_order_after_cart_contents', 'woocommerce_checkout_coupon_form_custom' );
function woocommerce_checkout_coupon_form_custom() {
    echo '<tr class="coupon-form"><td colspan="2">';
    
    wc_get_template(
        'checkout/form-coupon.php',
        array(
            'checkout' => WC()->checkout(),
        )
    );
    echo '</tr></td>';
}

Der Code wird in die Datei functions.php des aktiven untergeordneten Designs (oder aktiven Designs) eingefügt. getestet und funktioniert.


Wenn Sie das Gutscheinformular direkt anzeigen möchten, können Sie Folgendes in die style.css-Datei Ihres aktiven untergeordneten Designs (oder aktiven Designs) einfügen:

.woocommerce-checkout .checkout_coupon.woocommerce-form-coupon {
    display: block !important;
}

Verwandte: Coupon-Feld nach Checkout-Zahlung in Woocommerce verschieben?

  • Hallo @LoicTheAstec! Danke für deine Antwort. Es scheint, dass es das Coupon-Formular an der richtigen Stelle anzeigt, aber dann gibt es ein Symbol, dass das Formular aktualisiert wird und das Coupon-Formular verschwindet… irgendeine Idee warum?

    – Ludwig

    14. Juli 2020 um 15:51 Uhr

  • Beispiel hier staging.hemen-biarritz.com/checkout

    – Ludwig

    14. Juli 2020 um 15:51 Uhr

  • geht hier nicht. Vielleicht ein Plugin. Ich überprüfe jetzt.

    – Ludwig

    14. Juli 2020 um 19:25 Uhr

  • OK habe es. Ich zeige nur den Teil an, der enthält checkout_coupon woocommerce-form-coupon also musste ich display: block !important es

    – Ludwig

    14. Juli 2020 um 19:31 Uhr

  • Jedem, der nach einer besseren Lösung sucht, würde ich dieses Thema vorschlagen.

    – Omid Toraby

    25. Januar 2021 um 8:28 Uhr

916310cookie-checkVerschiebt das Coupon-Formular vor die Zwischensumme in der WooCommerce-Kasse

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

Privacy policy