Условная установка стоимости метода доставки WoocommercePhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Условная установка стоимости метода доставки Woocommerce

Сообщение Anonymous »

Я собираюсь обнулить стоимость одного способа доставки, если стоимость товаров в корзине превышает 99,99 (включая налоги), исходный код можно найти здесь:

Код: Выделить всё

add_filter( 'woocommerce_package_rates', 'custom_shipping_costs_based_on_products_cost', 20, 2 );

function custom_shipping_costs_based_on_products_cost( $rates, $package ) {

$products_amount = WC()->cart->cart_contents_total;
$taxes_amount = WC()->cart->get_cart_contents_tax();
$total = $products_amount + $taxes_amount;

if ($total > 99.98) {
foreach( $rates as $rate_key => $rate ){
if( $rate->method_id == 'alg_wc_shipping:198'){
$rates[$rate_key]->cost = 0;
}
}
}

return $rates;
}
Код, к сожалению, не работает, и я не могу понять, почему. Та часть, где я считаю $total, работает нормально, она проверена. Идентификатор метода находится в html-коде корзины: Я также пытался удалить условие и просто изменить стоимость, тоже ничего не дало.

Подробнее здесь: https://stackoverflow.com/questions/792 ... ditionally
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»