Фильтровать режим экспедиции по общему объему корзины в woocommerce - PullRequest
0 голосов
/ 17 января 2020

У меня есть функция, которая фильтрует вес тележки, чтобы установить правильный режим экспедиции. Работает нормально. У меня есть еще одна функция для фильтрации режима экспедиции, когда общая сумма корзины превышает 80 €. Эта последняя функция не работает вообще. Я провел много исследований, но я все еще не понимаю. Если кто-то может помочь мне, он добро пожаловать! Извините за мой английский sh, я французский ... :) Вот код в функциях. php woocommerce, это первая функция, которая не работает, я не скопировал всю вторую функцию потому что она отлично работает:

/* Livraison offerte au delà de 80 € */
add_filter( 'woocommerce_package_rates','shipping_rates_based_on_cart_amount', 10, 2 );
function shipping_rates_based_on_cart_amount( $rates, $package ) {

if ( WC()->cart->subtotal >=80 ) {
     if ( isset( $rates['service_point_shipping_method:89'], $rates['flat_rate:88'] ) )
     unset ($rates['service_point_shipping_method:56'],
            $rates['service_point_shipping_method:57'],
            $rates['service_point_shipping_method:58'],
            $rates['service_point_shipping_method:59'],
            $rates['service_point_shipping_method:60'],
            $rates['service_point_shipping_method:61'],
            $rates['service_point_shipping_method:62'],             
            $rates['service_point_shipping_method:63'],
            $rates['service_point_shipping_method:64'],
            $rates['service_point_shipping_method:65'],
            $rates['service_point_shipping_method:66'],
            $rates['service_point_shipping_method:67'],
            $rates['service_point_shipping_method:68'],
            $rates['flat_rate:75'],
            $rates['flat_rate:76'],
            $rates['flat_rate:77'],
            $rates['flat_rate:78'],
            $rates['flat_rate:79'],
            $rates['flat_rate:80'],
            $rates['flat_rate:81'],
            $rates['flat_rate:82'],
            $rates['flat_rate:83'],
            $rates['flat_rate:84'],
            $rates['flat_rate:85'],
            $rates['flat_rate:86'],
            $rates['flat_rate:87'] );
 }

     return $rates;   
}

/* Livraison par poids */
add_filter('woocommerce_package_rates', 'bbloomer_woocommerce_tiered_shipping', 9999, 2 );

function bbloomer_woocommerce_tiered_shipping( $rates, $package ) {


/* jusqu'à 250g inclus */

 if ( WC()->cart->get_cart_contents_weight() <=250 ) {

     if ( isset( $rates['service_point_shipping_method:56'], $rates['flat_rate:75'] ) )
     unset ($rates['service_point_shipping_method:88'],
            $rates['service_point_shipping_method:57'],
            $rates['service_point_shipping_method:58'],
            $rates['service_point_shipping_method:59'],
            $rates['service_point_shipping_method:60'],
            $rates['service_point_shipping_method:61'],
            $rates['service_point_shipping_method:62'],             
            $rates['service_point_shipping_method:63'],
            $rates['service_point_shipping_method:64'],
            $rates['service_point_shipping_method:65'],
            $rates['service_point_shipping_method:66'],
            $rates['service_point_shipping_method:67'],
            $rates['service_point_shipping_method:68'],
            $rates['flat_rate:89'],
            $rates['flat_rate:76'],
            $rates['flat_rate:77'],
            $rates['flat_rate:78'],
            $rates['flat_rate:79'],
            $rates['flat_rate:80'],
            $rates['flat_rate:81'],
            $rates['flat_rate:82'],
            $rates['flat_rate:83'],
            $rates['flat_rate:84'],
            $rates['flat_rate:85'],
            $rates['flat_rate:86'],
            $rates['flat_rate:87'] );
 }

    /* jusqu'à 500g inclus */

elseif ( WC()->cart->get_cart_contents_weight() >250 && WC()->cart->get_cart_contents_weight() <=500 ) {

     if ( isset( $rates['service_point_shipping_method:57'], $rates['flat_rate:76'] ) )
     unset ($rates['service_point_shipping_method:88'],
            $rates['service_point_shipping_method:56'],
            $rates['service_point_shipping_method:58'],
            $rates['service_point_shipping_method:59'],
            $rates['service_point_shipping_method:60'],
            $rates['service_point_shipping_method:61'],
            $rates['service_point_shipping_method:62'],             
            $rates['service_point_shipping_method:63'],
            $rates['service_point_shipping_method:64'],
            $rates['service_point_shipping_method:65'],
            $rates['service_point_shipping_method:66'],
            $rates['service_point_shipping_method:67'],
            $rates['service_point_shipping_method:68'],
            $rates['flat_rate:89'],
            $rates['flat_rate:75'],
            $rates['flat_rate:77'],
            $rates['flat_rate:78'],
            $rates['flat_rate:79'],
            $rates['flat_rate:80'],
            $rates['flat_rate:81'],
            $rates['flat_rate:82'],
            $rates['flat_rate:83'],
            $rates['flat_rate:84'],
            $rates['flat_rate:85'],
            $rates['flat_rate:86'],
            $rates['flat_rate:87'] );
 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...