2014-01-15 65 views
3

我正在为WooCommerce构建一个插件,这将允许管理员设置每个客户统一费率的运费价格。我正在试图计算出运费价格的函数,以便我可以覆盖计算出的价格和方法,并只返回一个具有该客户的预设价格的运输选项。我可以用什么钩子来实现这个目标?WooCommerce - 覆盖运费

我认为这可能是woocommerce_calculated_shipping挂钩,但我找不到如何使用它的好例子。

+0

您应该选择答案。 – Skatox

回答

11

这可能是一个迟到的回答,但如果有人需要它:

add_filter('woocommerce_package_rates','test_overwrite_fedex',100,2); 
function test_overwrite_fedex($rates,$package) { 

    foreach ($rates as $rate) { 

     //Set the price 
     $rate->cost = 1000; 

     //Set the TAX 
     $rate->taxes[1] = 1000 * 0.2; 

    } 

    return $rates; 
} 

的利率是由Woocommerce使用WordPress的瞬态功能缓存。因此,当您测试时,请确保您更改商品数量,以便正确更新包裹价格,或者每次刷新时都可以清空购物车:)

+0

这个工程!这是这个问题的正确答案。 – Skatox

+0

这很好! – Avishai