Mindestbestellwert WooCommerce

  • Hallo,

    ich habe echt ein Problem mit Woocommerce. Meine Seite verkauft Kartons für jeweils 1,80€. Jetzt will ich natürlich nicht, dass jemand nur einen Karton bestellt und wollte daher eine Mindestabnahme von 10 Kartons machen... ist das möglich???

    Meine Seite: Express-verpackungen..de

    • Anzeige

    Hallo!

    Wenn du gerade an deiner Website arbeitest oder dein aktuelles Hosting überdenkst: Wir betreiben mit NetzLiving eine Hosting-Plattform, die speziell auf Performance, Sicherheit und einfache Verwaltung ausgelegt ist.

    • ✔️ Schnelle Ladezeiten (optimiert für WordPress & Co.)
    • ✔️ Deutsche Server & DSGVO-konform
    • ✔️ Persönlicher Support (kein 0815-Ticket-System)

    Mehr erfahren

  • schau dir mal dieses Plugin an,
    ich tät
    1.die Kommentare dort genau durchlesen und wenn geht und nötig ist

    2. pre sale Fragen stellen

    http://codecanyon.net/item/woocommer…-limits/5334972

  • Okay.. gibt es keine Kostenfreie Alternative, da ich gerade erst damit gestartet bin...
    Ich habe folgenden Code mal in die functions.php reingepackt:

    [TABLE="class: highlight tab-size js-file-line-container, width: 967"]

    [tr]


    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"]add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"]add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"]function wc_minimum_order_amount() {[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] // Set this variable to specify a minimum order value[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] $minimum = 50;[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] if ( WC()->cart->total [COLOR=#F8F8F8]<[/COLOR] $minimum ) {[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] if( is_cart() ) {[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_print_notice( [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] sprintf( 'You must have an order with a minimum of %s to place your order, your current order total is %s.' , [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_price( $minimum ), [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_price( WC()->cart->total )[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] ), 'error' [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] );[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] } else {[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_add_notice( [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] sprintf( 'You must have an order with a minimum of %s to place your order, your current order total is %s.' , [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_price( $minimum ), [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] wc_price( WC()->cart->total )[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] ), 'error' [/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] );[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] }[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"] }[/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"][/TD]

    [/tr][tr]


    [TD="class: blob-num js-line-number, bgcolor: transparent, align: right"][/TD]
    [TD="class: blob-code blob-code-inner js-file-line, bgcolor: transparent"]}[/TD]

    [/tr]


    [/TABLE]


    Leider aber wird dadurch nicht verhindert, dass man kaufen kann. Es wird nur ein Hinweis ausgegeben..

  • Ich kenne mich nicht sonderlich in PHP aus, aber ist dort eine IF abfrage machbar? Sodass man die IF abfrage machen könnte und wenn das zutrifft den Button "weiter zur Kasse" nicht anzeigen... oder so ähnlich

    mfg

  • Versuche es mal hiermit

    Code
    add_action( 'woocommerce_check_cart_items', 'mmx_min_order_amount' );
    function mmx_min_order_amount() {
    	$min_bw = 50; // Mindestbestellwert
    	if ( WC()->cart->total < $min_bw ) {
    		WC()->add_error( sprintf( 'Mindestbestellwert: %s, Ihre Bestellung %s.' , woocommerce_price( $min_bw ), woocommerce_price( WC()->cart->total ) ) );
    	}
    }

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Versuche es mal hiermit

    Vergiss es. Den Code hatte ich vor Ewigkeiten beim Kunden eingebaut. add_error gibt es gar nicht mehr (ich muss echt mal wieder aufräumen)

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Wie wäre es, wenn du dich erst einmal um die rechtlichen Probleme deines Shops kümmerst.
    Der Verkauf in Deutschland unterliegt gewissen vorgaben, wie Versandkosten, MwSt. Angaben usw.

    Nein, dem habe ich nichts hinzuzufügen :-)
    [HR][/HR]

  • Habe meine alte Funktion mal eben umgeschrieben und der aktuellen WooCommerce Version angepasst:

    Code
    add_action( 'woocommerce_check_cart_items', 'mmx_min_order_amount' );
    function mmx_min_order_amount() {
        $min_bw = 50; // Mindestbestellwert
        if ( WC()->cart->total < $min_bw ) {
            wc_add_notice( sprintf( 'Mindestbestellwert: %s, Ihre Bestellung %s.' , woocommerce_price( $min_bw ), woocommerce_price( WC()->cart->total ) ) );
            remove_action( 'woocommerce_proceed_to_checkout', 'woocommerce_button_proceed_to_checkout', 20 );
            add_filter( 'woocommerce_order_button_html', function(){ return '';} );
        }
    }

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Hey, danke für die Antwort.. soweit klappt das SUPER. Leider geht es nur, wenn man die Seite aktualisiert... Wenn man bspw. unter 15€ bestellt hat und dann in der Menge eins hinzufügt, bringt es nichts, den Warenkorb zu aktualisieren, sondern erst, wenn man die Seite Aktualisiert. Verstehe ich auch irgendwie nicht, weil die Warenkorbaktualisierung ja doch eig. eine Seitenaktualisierung ist..

    LG

  • Hey, danke für die Antwort.. soweit klappt das SUPER. Leider geht es nur, wenn man die Seite aktualisiert... Wenn man bspw. unter 15€ bestellt hat und dann in der Menge eins hinzufügt, bringt es nichts, den Warenkorb zu aktualisieren, sondern erst, wenn man die Seite Aktualisiert. Verstehe ich auch irgendwie nicht, weil die Warenkorbaktualisierung ja doch eig. eine Seitenaktualisierung ist..

    LG


    Der Warenkorb wird per Ajax (jQuery) aktualisiert und die Funktion nicht erneut ausgeführt. Das müsste man entsprechend erweitern. Das Grundgerüst hast Du jetzt ja schon.

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

  • Der Codex gibt Aufschluß: https://codex.wordpress.org/AJAX_in_Plugins

    WordPress ist "frei" wie in Freiheit es zu nutzen, aber nicht im Sinne von Freibier. Wer also glaubt man bekommt rund um WordPress alles kostenlos, der irrt. Hilfe ist ein Geschenk für das man sich bedankt, dafür gibt es den 'Gefällt mir' Button. Wer das nicht kann und sich selbst nicht zu helfen weiss, muss sich bezahlte Unterstützung suchen.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!