Я новичок в настройке Woocommerce с помощью фрагментов хуков. Я пытаюсь настроить способ расчета стоимости доставки и налогов на моем сайте Woocommerce: математическая логика работает, поэтому доступны стоимость товаров, стоимость доставки и налоги на товары.
Что мне непонятно, так это:
- какой правильный крючок я должен использовать, чтобы переопределить расчет налогового класса по умолчанию?
- как я могу отключить стандартный расчет налога и установить рассчитываемый мной налог на WC? какая функция нужна?
- как я могу отобразить эти налоги на странице корзины?
До сих пор я добавил в файл functions.php моей темы этот фрагмент, который на основе каждого продукта корзины вычисляет его новую налоговую стоимость.
add_filter('woocommerce_shipping_packages', 'override_woocommerce_shipping_packages');
function override_woocommerce_shipping_packages($packages) {
$products_subtotal = Array();
$products_shiptax = Array();
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$product = $cart_item['data'];
$subtotal = WC()->cart->get_product_subtotal( $product, $cart_item['quantity'] );
$products_subtotal[$cart_item_key] = floatval( preg_replace( '#[^\d.]#', '', $subtotal) )/100;
$products_shiptax[$cart_item_key] = $product->get_tax_class();
//based on the product's tax class
if($products_shiptax[$cart_item_key]=="vat-20"){
// HERE I HAVE TO OVERRIDE ITS TAX VALUE
}else{
// HERE I HAVE TO OVERRIDE ITS TAX VALUE
}
}
return $packages;
}
На справочной странице кода WC я вижу множество функций set_taxes или set_tax_total. Но трудно понять, на каком крючке я должен вызывать эти функции.
У вас есть какие-нибудь объяснения и примеры? Большое спасибо за ответ!
Версия WC 5.1.0
woocommerce_package_rates
filter hook… Просмотрите все связанные темы, используя этот крючок - person LoicTheAztec   schedule 29.03.2021