Woocommerce: Filter für Versandkosten

Änderung der Bestellungsdetails
25. April 2017
Woocommerce: Zeige Preise Netto für bestimmte Kundengruppe
21. Mai 2017

Standardmäßig stellt Woocommerce seit Version 2.6 die Versandart Versandkostenpauschale und kostenloser Versand gleichzeitig im Frontend dar. Der Kunde kann also im Warenkorb und in der Kasse zwischen beiden Varianten wählen. Das führt dazu, dass der Kunde bei einer Bestellung, die eigentlich versandkostenfrei ist, immer noch die Option hat, die Versandkostenpauschale als Option auszuwählen.

Aus Sicht des Shops könnte man sagen, dass der Kunde grundsätzlich selber Schuld ist, wenn er auf die falsche Option klickt. Dennoch bietet es sich an, diesen Fehler in Woocommerce zu beseitigen und dem Kunden auch nur den kostenlosen Versand im Warenkorb zu zeigen, sobald er die Schwelle dafür überschritten hat.

Das ganze lässt sich durch eine Ergänzung in der functions.php erledigen. Wichtig ist dabei, dass der Wert in der letzten Zeile individuell an die eigene Grenze für kostenlosen Versand angepasst werden muss. In unserem Beispiel liegt die Grenze bei 150€.

Die functions.php liegt standardmäßig im Verzeichnis /wp-content/themes/name_des_themes/
function my_hide_shipping_when_free_is_available( $rates ) {
$free = array();
foreach ( $rates as $rate_id => $rate ) {
if ( 'free_shipping' === $rate->method_id ) {
$free[ $rate_id ] = $rate;
break;
}
}
return ! empty( $free ) ? $free : $rates;
}
add_filter( 'woocommerce_package_rates', 'my_hide_shipping_when_free_is_available', 150 );

 

Mit dieser Ergänzung in der functions.php lässt sich der Fehler sehr schnell beseitigen.