1) Vous pouvez utiliser le code suivant (pour définir la méthode d'expédition « forfaitaire » par défaut) En page du panier:
add_action('woocommerce_before_cart', 'set_default_chosen_shipping_method', 5);
function set_default_chosen_shipping_method(){
//
if(count(WC()->session->get('shipping_for_package_0')['rates']) > 0){
foreach(WC()->session->get('shipping_for_package_0')['rates'] as $rate_id =>$rate)
if($rate->method_id == 'flat_rate'){
$default_rate_id = array($rate_id);
break;
}
WC()->session->set('chosen_shipping_methods', $default_rate_id);
}
}
Code va dans le fichier function.php de votre thème enfant actif (actif thème ou dans un fichier plugin).
testé et fonctionne dans WooCommerce 3+
2) Vous pouvez également réorganiser les tarifs d'expédition dans vos zones d'expédition paramètres (mais il ne fonctionne pas vraiment comme le dernier mode d'expédition choisi de prendre la main).
où est votre code, qu'avez-vous essayé? – madalinivascu
Je pense que vous devez changer la sélection/priorité https://help.extensionworks.com/hc/fr/articles/206964358-Using-the-default-WooCommerce-shipping-option-and-how-to-configure- this- – AZinkey
Vous devez donner l'option shopper à choisir, ne forcez pas. – Scriptonomy