Home / eCommerce / Verzend mogelijkheden weghalen bij gratis verzenden behalve ophalen op locaite
Duplicate Snippet

Embed Snippet on Your Site

Verzend mogelijkheden weghalen bij gratis verzenden behalve ophalen op locaite

Rene Dijk PRO
<10
Code Preview
php
<?php
function custom_hide_shipping_when_free_shipping_is_available( $rates, $package ) {
    $free_shipping_exists = false;
    $local_pickup_exists = false;
    // Check if Free Shipping and/or Local Pickup exist
    foreach ( $rates as $rate_key => $rate ) {
        if ( 'free_shipping' === $rate->get_method_id() ) {
            $free_shipping_exists = true;
        }
        if ( 'local_pickup' === $rate->get_method_id() ) {
            $local_pickup_exists = true;
        }
    }
    // If Free Shipping is available, hide other rates (except optionally Local Pickup)
    if ( $free_shipping_exists ) {
        foreach ( $rates as $rate_key => $rate ) {
            if ( 'free_shipping' !== $rate->get_method_id() && 'local_pickup' !== $rate->get_method_id() ) {
                unset( $rates[ $rate_key ] );
            }
        }
    }
    return $rates;
}
add_filter( 'woocommerce_package_rates', 'custom_hide_shipping_when_free_shipping_is_available', 100, 2 );

Comments

Add a Comment