将 function.php 中小于 $5 的产品价格更改为 $5 的价格(从 $4.49 更改为 $5):现在税费仍然从 $4.49 开始计算,但需要从 $5 开始计算

问题描述 投票:0回答:1

我正在尝试以编程方式将 WooCommerce 产品的定价从 4.49 美元更改为 5 美元。效果很好。

虽然产品价格随处可见为 5 美元,但现在存在税费计算问题,因为它继续根据原始价格(例如 4.49 美元)而不是更新后的 5 美元计算。

示例:

购物车总计 10 美元,其中 2 件产品每件售价 5 美元。

但是显示的 19% 税为 1,60 美元,因为它仍然是根据原价 4,49 美元计算的。目标是根据更改后的价格计算 19% 的税,在本例中,价格将从 10 美元变为 1.90 美元。

目标是解决这种不一致问题,并确保对于低于 5 美元起征点的产品,根据新的 5 美元固定价格准确计算税收。

这是我当前在 function.php 中使用的代码:

/* Changing the price of WordPress products dynamically by redpishi.com */
function filtering_product_prices( $price, $product ) {
$price = (float)$price;
$new_price = $price * 1 ;   // New price formula
    
// paste conditional codes here
if ( $price < 5 ) {  
return 5;  
} 
return ceil($new_price);
}

function custom_price( $price, $product ) {
    wc_delete_product_transients($product->get_id());
    return filtering_product_prices( $price, $product );
}
function custom_variation_price( $price, $variation, $product ) {    
    wc_delete_product_transients($variation->get_id());
    return filtering_product_prices( $price, $product );    
}

add_filter('woocommerce_product_get_price', 'custom_price', 90, 2 );
add_filter('woocommerce_product_get_tax_price', 'custom_price', 90, 2 );

// add_filter('woocommerce_product_get_regular_price', 'custom_price', 90, 2 );
// add_filter('woocommerce_product_variation_get_regular_price', 'custom_price', 99, 2 );
// add_filter('woocommerce_product_variation_get_price', 'custom_price' , 99, 2 );
// add_filter('woocommerce_variation_prices_price', 'custom_variation_price', 99, 3 );
// add_filter('woocommerce_variation_prices_regular_price', 'custom_variation_price', 99, 3 );

税费是使用 Germanized Pro 插件计算的。

有哪位英雄可以帮助我正确计算上述代码的税款吗?

已经非常感谢您了!

wordpress function woocommerce price
1个回答
0
投票

我认为仅在前端“覆盖”价格不是一个好主意。您可以使用

woocommerce_before_calculate_totals
钩子在结账时重新计算所有内容,但我怀疑可能在其他地方仍会保留低于 5 美元的旧价格,尤其是在使用像
Germanized Pro
这样的插件时。

我不知道您的具体情况,但如果您实际上不需要旧价格以供将来使用,我建议您在

Woocommerce
管理员上简单地批量编辑产品。如果由于某种原因按价格排序存在问题,您可以使用更高级的解决方案,例如
Bulk Table Editor

© www.soinside.com 2019 - 2024. All rights reserved.