woocommerce_package_rates

FILTER woocommerce\includes\class-wc-shipping.php (ligne 395) github
Filter the calculated shipping rates.
traduction française
Filtrer les frais de port calculés.

Paramètres

Entrée :
$package['rates'], $package
Sortie :
@param array $package['rates'] Package rates.
@param array $package Package of cart items.

Utilisation

Modifier les méthodes de livraison disponibles

Filtrer ou personnaliser les options de livraison selon le panier

order-flow
// Modifier les méthodes de livraison
add_filter('woocommerce_package_rates', 'modifier_methodes_livraison', 10, 2);

function modifier_methodes_livraison($rates, $package) {
    $cart_total = WC()->cart->get_cart_contents_total();
    
    // Supprimer la livraison express si panier < 100€
    if ($cart_total < 100 && isset($rates['express_shipping'])) {
        unset($rates['express_shipping']);
    }
    
    // Livraison gratuite si > 50€
    if ($cart_total >= 50) {
        foreach ($rates as $rate_id => $rate) {
            if ($rate->method_id === 'flat_rate') {
                $rates[$rate_id]->cost = 0;
            }
        }
    }
    
    return $rates;
}

Actualités

Chargement des actualités...