Kategorien
WooCommerce

WooCommerce Mindestbestellwert festlegen

MIndestbestellwert in WooCommerce eingeben
Mindestbestellwert in WooCommerce eingeben

Du bietest in deinem WooCommerce-Shop Waren mit niedrigen Preisen an? Dann solltest du einen Mindestbestellwert festlegen. Wie das funktioniert, zeige ich dir in diesem Tutorial.

Inhalt

Das Plugin Minimum Purchase for WooCommerce

Minimum Purchase for WooCommerce
Das Plugin Minimum Purchase for WooCommerce

Im WordPress-Pluginverzeichnis gibt es das Plugin Minimum Purchase for WooCommerce. Allerdings hat es sehr viele 1-Stern-Bewertungen erhalten. Ich bevorzuge eine andere Lösung, nämlich die Festlegung des Mindestbestellwerts über ein Code-Snippet, also einen Code-Schnipsel.

Positiver Nebeneffekt der Snippet-Lösung: Man lernt, relativ ungefährlich (keine Haftung 😉  ) die PHP-Funktionen eines Themes zu erweitern.

Was sind Code-Snippets?

Mit einem Schnipsel PHP-Code erweiterst du die Funktionalität von WordPress. Der Ort zum Einfügen eines Code-Snippets ist die Datei functions.php. Die Sache hat allerdings ein paar Haken:

  • Ein kritischer Fehler in der Functions-Datei legt WordPress komplett lahm.
  • Bei einem Theme-Update wird deine Änderung überschrieben.
  • Falls du weitere Funktionen hinzufügen möchtest: Irgendwann weißt du nicht mehr, welche Stellen du in der functions.php verändert hast.

Abhilfe schafft das kostenlose Code-Snippets-Plugin.

Code Snippets

Das Plugin Code Snippets
Das kostenlose Plugin Code Snippets

Das Plugin Code Snippets stellt dir ein separates PHP-Code-Eingabefeld zur Verfügung. Der Dreh:

  • Du kannst Snippets hinzufügen, als ob sie in der Datei functions.php deines Themes eingefügt wären.
  • Du kannst Snippets per Klick aktivieren und deaktivieren.

Nebenbei: Du kannst das Ding auch verwenden, um dein PHP-Coding zu verbessern und dein eigenes Plugin oder Theme entwickeln. Jetzt aber zurück zum Thema: Mindestbestellwert in WooCommerce. Installiere dir Code Snippets ganz normal über die Plugin-Verwaltung im WordPress-Backend.

Code-Fenster öffnen

Das Codefenster von Code-Snippet
Das Codefenster von Code-Snippet

Nach der Aktivierung des Plugins findest du links ein neues Menü. Gehe auf Snippets > Neu hinzufügen um das Eingabefenster für den Code zu öffnen.

Code abrufen

Den Originalcode für das Snippet findest du hier bei WooCommerce. Ich habe den Code eingedeutscht und angepasst. Du kannst auch eigene Anpassungen durchführen. Üblich sind diese Stellen:

  • Änderung der Höhe des Mindestbestellwerts
  • Änderung der ausgegebenen Texte im Warenkorb und der Kasse, falls dein Kunde den Mindestbestellwert unterschreitet

Nun der Code zum Einfügen:

add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );

function wc_minimum_order_amount() {

$minimum = 50; // Hier gibst du den Mindestbestellwert ein

if ( WC()->cart->total < $minimum ) { if( is_cart() ) { wc_print_notice( sprintf( 'Der Mindestbestellwert beträgt %s pro Bestellung. Der aktuelle Bestellwert beträgt %s.' , // Text fuer Warenkorb wc_price( $minimum ), wc_price( WC()->cart->total )
), 'error'
);

} else {

wc_add_notice(
sprintf( 'Der Mindestbestellwert beträgt %s pro Bestellung. Der aktuelle Bestellwert beträgt %s.' , // Text fuer Kasse
wc_price( $minimum ),
wc_price( WC()->cart->total )
), 'error'
);

}
}

}

Code einfügen

Codefenster
Code einfügen

Hast du den Code angepasst? Dann gib oben einen Titel ein, zum Beispiel „Mindestbestellwert“. Dann fügst du den Code in das Codefenster des Plugins ein.

Achtung: Das übliche PHP-Start-Tag <?php und das übliche PHP-End-Tag ?> musst du bei der Nutzung des Code-Snippets-Plugins nicht eingeben. Code Snippets erledigt die Kennzeichnung als PHP. Es ist aber nicht problematisch, falls du die Anfangs- und End-Tags eingefügt hast. Das Plugin entfernt die doppelten Tags automatisch.

Code aktivieren

MIndestbestellwert aktivieren
Mindestbestellwert aktivieren

Nicht vergessen: In der Pluginverwaltung musst du den Code noch aktivieren. Vorher tut sich da gar nichts! Falls du mehrere Snippets über das Plugin eingefügt hast, bietet dieses Fenster eine echte Zeitersparnis. Jeder Schnipsel kann separat aktiviert und deaktiviert werden.

Code testen

Mindestbestellwert Warenkorb
Der Mindestbestellwert im Warenkorb wird angezeigt, falls der Kunde zu wenig bestellt hat

Gib eine Testbestellung unterhalb des Mindestbestellwerts ein … im Warenkorb erscheint nun ein Hinweis, und ebenso in der Kasse. Den Hinweistext kannst du jederzeit in Code Snippets anpassen.

MIndestbestellwert Kasse
Der Mindestbestellwert auf der Kassenseite wird angezeigt, falls der Kunde zu wenig bestellt hat

Getestet habe ich den Code mit dieser Konfiguration:

  • WordPress 4.8.3
  • WooCommerce 3.2
  • WooCommerce Germanized 1.9 – die kostenlose Version

Mindestbestellwert in wpShopGermany

Zum Schluss noch ein Feature-Vergleich zwischen WooCommerce vs wpShopGermany: In wpShopGermany lässt sich der Mindestbestellwert über ein Modul festlegen: Modul Mindestbestellwert. Die Lizenzgebühr liegt bei 5 Euro.

  • WooCommerce: 5 Minuten Arbeitszeit
  • wpShopGermany: 5 Euro

Das kommt aufs Gleiche raus. Ergebnis: Unentschieden!

 

7 Antworten auf „WooCommerce Mindestbestellwert festlegen“

Hallo Lisa,
ich habe nochmal bei den WooCommerce-Snippets geschaut, aber dazu nichts gefunden. Für diese Option müsstest du einen WordPress-Entwickler beauftragen.
Meine persönlich Meinung: Nicht zu viel herumschrauben und das Ganze so lassen, dann bist du bei Updates auf der sicheren Seite (Für WooCommerce Version 3.5 gibt es schon einen Release Candidate & größere Änderungen stehen mit WordPress 5 an).
Viele Grüße,
Bernd

Hallo Bernd,
vielen Dank für diese blitzschnelle Antwort an einem Feiertag. Ich habe zwar absolut null Ahnung von php aber ich habe im Code jetzt einfach mal aus dem „total“ ein „subtotal“ gemacht und es funktioniert. Also das WC()->cart->total durch ein WC()->cart->subtotal ersetzt.
Ich teste natürlich in einer Staging-Umgebung. 😉
Gruß
Lisa

Trommelwirbel & Zimbel … dann erhältst du den Try & Error-Preis von mir! Und vielen Dank, dass du deine Lösung gepostet hast!
Viele Grüße,
Bernd

PS: Ja, Staging und Backups sind wichtig, das beruhigt die Nerven. 😉

Hey, dein Artikel ist unglaublich hilfreich. Ich habe jetzt allerdings eine Frage. Wie kann ich den Mindestbestellwert PRO KANTON/ORT/ oder POSTLEITZAHL festlegen?? Wäre super wenn du mir helfen kannst danke!!
Lg Marc

Guten Tag,
wird gut angezeigt, jedoch kann man trotzdem mit der Bestellung fortfahren. Haben andere dieses Verhalten auch?

Kommentar verfassen