我已经走到了尽头。我的客户将更新应用到 WooCommerce 3.x,现在我的自定义插件无法正常工作。该插件本质上是根据用户的邮政编码为产品的价格增加了一定的金额。它适用于常规产品,但不适用于可变/变体产品。我知道“woocommerce_get_price”的过滤器已更改,但我看不到任何提及“woocommerce_variation_prices_price”被更改或弃用的内容。
任何想法或帮助将不胜感激。该插件工作正常,直到更新到 3.x。
以下是之前运行良好的过滤器:
add_filter('woocommerce_variation_prices_price','zp_custom_variation_prices_price', 10, 2); add_filter('woocommerce_variation_prices_regular_price','zp_custom_variation_prices_price', 10, 2); add_filter('woocommerce_variation_prices_sale_price','zp_custom_variation_prices_price', 10, 2);
zp_custom_variation_prices_price 函数根据每个变体的位置吐出一个新价格。我已经确认此功能正确地为每个变体吐出调整后的价格。过滤器似乎并没有通过调整来应用价格。
在这里不知所措。提前致谢。
更新:5月15日
我想我可能已经找到了解决这个问题的方法,经过大量的试验和错误(还有一点哭泣)。
以下是最终起作用的过滤器:
add_filter('woocommerce_product_variation_get_price','zp_custom_variation_prices_price', 10, 2); add_filter('woocommerce_product_variation_get_regular_price','zp_custom_variation_prices_price', 10, 2); add_filter('woocommerce_product_variation_get_sale_price','zp_custom_variation_prices_price', 10, 2);
我不完全确定该插件以前是如何工作的,但这似乎已经解决了它。我在 Woocommerce 的文档中没有看到任何关于此的内容,但它确实存在。
结束更新
布兰登