В WooCommerce я пытаюсь установить прогрессивную стоимость доставки на основе 10% промежуточной суммы корзины с минимальной стоимостью 5 долларов США и максимальной стоимостью до 11 долларов США.
Вот моя попытка кода:
add_filter( 'woocommerce_package_rates', 'woocommerce_package_rates', 10, 2 );
function woocommerce_package_rates( $rates, $package ) {
// Make sure flat rate is available
if ( isset( $rates['flat_rate:24'] ) ) {
// Set the cost to $5
$rates['flat_rate:24']->cost = 5;
}
$cart_subtotal = $WC()->cart->subtotal
if ($cart_subtotal >50)
$percentage = 0.10; // Percentage (10%) in float
$percentage_fee = ( WC()->cart->subtotal >+ WC()->cart->get_shipping_total()) * $percentage;
}
});
return $rates;
}
Этот код выдает критическую ошибку на сайте. Я новичок в пользовательском кодировании Wordpress, как вы, вероятно, узнаете из кода ниже.
Также я хотел бы, чтобы отображаемый ярлык отображал USPS вместо фиксированной ставки.
Например, если промежуточная сумма корзины составляет 60 долларов, с них будет взиматься фиксированная стоимость доставки в размере 6 долларов (10% от промежуточной суммы).
Что я упускаю или делаю не так?