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
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 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
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
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
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
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.
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 Bernd,
kann ich auch einen Mindestbestellwert exklusive Versandkosten einstellen?
Herzliche Grüße
Lisa
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?
Habe das selbe Problem..