Ho recentemente aggiornato a WooCommerce 2.6 nel mio negozio e hanno aggiornato il loro sistema di spedizione. Prima ho usato questo per nascondere l'opzione di spedizione pagato quando un valore di ordine specifico è stato raggiunto e la spedizione gratuita è stata innescata:WooCommerce 2.6 - Nascondere la spedizione a pagamento quando la spedizione gratuita viene attivata raggiungendo l'importo specifico
/**
* woocommerce_package_rates is a 2.1+ hook
*/
add_filter('woocommerce_package_rates', 'hide_shipping_when_free_is_available', 10, 2);
/**
* Hide shipping rates when free shipping is available
*
* @param array $rates Array of rates found for the package
* @param array $package The package array/object being shipped
* @return array of modified rates
*/
function hide_shipping_when_free_is_available($rates, $package) {
// Only modify rates if free_shipping is present
if (isset($rates['free_shipping'])) {
// To unset a single rate/method, do the following. This example unsets flat_rate shipping
unset($rates['flat_rate']);
// To unset all methods except for free_shipping, do the following
$free_shipping = $rates['free_shipping'];
$rates = array();
$rates['free_shipping'] = $free_shipping;
}
return $rates;
}
Anche se questo non funziona più. Ho bisogno di una nuova correzione e non sono davvero in codice.
Qualcuno ha una soluzione a questo?
La soluzione di cui sopra è stato da questo sito:
Hide other shipping methods when FREE SHIPPING is available
Sto indovinando che alcuni parametri sono cambiati da quando hanno aggiornato i metodi di trasporto.
Spero che qualcuno là fuori sappia come risolvere il problema.
è questo codice di lavoro? Perché non riesco a vedere i cambiamenti nel mio woo 2.6.7 – vladimir