我正在尝试为Woocommerce中的每个产品设置自定义税值,其计算方法如下:

(price - cost) * (0,19/1,19)

由于Woocommerce没有提供产品成本的字段,因此我安装了Cost of Goods - Woocommerce扩展名,允许将此信息添加到每个产品中 .

然后我继续寻找计算税收 (calc_tax( $price, $rates, $price_includes_tax = false, $deprecated = false) 的功能,并找到钩子 'woocommerce_calc_tax' 我猜我必须挂钩才能更改计算的税:

apply_filters( 
  'woocommerce_calc_tax',  
  $taxes,  
  $price,  
  $rates,  
  $price_includes_tax,  
  $suppress_rounding 
);

在文件 [includes/class-wc-tax.php][2] 中 .

但由于钩子只提供五个参数 - 其中没有一个参数代表产品的成本 . 我不知道如何将产品的成本传递给挂钩到这个钩子的函数 .

所以我的问题是如何:

  • 传递一个未在上面的钩子中声明的变量,

  • (如果1.有效)如何将产品的成本(从商品成本插件)传递到此挂钩,以用于如上所述的自定义税收计算 .

或者有不同的方法来做到这一点?