In vielen Online-Shops ist festgelegt, dass die Lieferung ab einem bestimmten Betrag kostenfrei erfolgt. Auch in WooCommerce lässt sich jeder Versandzone der Abholung vor Ort und Versandkostenpauschale eine „Kostenlose Lieferung“ hinzufügen und jeweils unabhängig voneinander festlegen, ab welchem Betrag diese wirksam wird. So kann die Inlandslieferung ab EUR 49,00 bereits kostenfrei sein, die in benachbarte Länder erst ab EUR 69,00 und so weiter.
Sobald Zone und Betrag ermittelt sind, wird der kostenfreie Versand in den Versandoptionen des Warenkorbs angezeigt. Allerdings verschwindet die Versandkostenpauschale dann nicht einfach, sondern wird weiter mit gelistet und ist auch wählbar.
Nachfolgendes Snippet blendet die kostenpflichtige Versandoption aus, sobald der Betrag für den kostenfreien Versand der ermittelten Zone erreicht ist.
Ist die Abholung vor Ort in einer Zone eine Option, so bleibt diese erhalten.
/**
* Hide shipping rates with cost when free shipping is available.
*/
function prefix_hide_shipping_when_free_is_visible( $rates ) {
foreach ( $rates as $rate_id => $rate ) {
if ( 'free_shipping' === $rate->method_id ) {
unset($rates['flat_rate:2']);
}
}
return $rates;
}
add_filter( 'woocommerce_package_rates', 'prefix_hide_shipping_when_free_is_visible', 100 );
Schreibe einen Kommentar