首页 > 后端开发 > php教程 > 如何使用 Hook 有效修改 WooCommerce 产品价格(包括变体)?

如何使用 Hook 有效修改 WooCommerce 产品价格(包括变体)?

Patricia Arquette
发布: 2024-11-29 13:09:09
原创
319 人浏览过

How to Effectively Modify WooCommerce Product Prices (Including Variations) Using Hooks?

如何在 WooCommerce 3 中使用 Hook 修改产品价格

在 WooCommerce 中,修改产品价格需要使用特定的 Hook。虽然此过程对于简单产品来说很简单,但变体产品提出了独特的挑战。

克服变体价格修改挑战

使用过时的挂钩 woocommerce_get_regular_price 和 woocommerce_get_price 对于 WooCommerce 3 中的变体产品不再有效因为它们已被弃用。为了确保兼容性,必须使用适当的挂钩并正确应用它们。

解决方案

要修改所有产品价格,包括变体价格,请实施以下挂钩:

插件版本:

add_filter('woocommerce_product_get_price', 'custom_price', 99, 2);
add_filter('woocommerce_product_get_regular_price', 'custom_price', 99, 2);
// Variations 
add_filter('woocommerce_product_variation_get_regular_price', 'custom_price', 99, 2);
add_filter('woocommerce_product_variation_get_price', 'custom_price', 99, 2);

// Variable (price range)
add_filter('woocommerce_variation_prices_price', 'custom_variable_price', 99, 3);
add_filter('woocommerce_variation_prices_regular_price', 'custom_variable_price', 99, 3);
登录后复制

主题版本:

add_filter('woocommerce_product_get_price', 'custom_price', 99, 2 );
add_filter('woocommerce_product_get_regular_price', 'custom_price', 99, 2 );
// Variations
add_filter('woocommerce_product_variation_get_regular_price', 'custom_price', 99, 2 );
add_filter('woocommerce_product_variation_get_price', 'custom_price', 99, 2 );
登录后复制

在 custom_price 和 custom_variable_price 函数中,将所需的价格乘数应用于现有价格以实现所需的更改。

可变价格范围处理

可变产品显示一系列价格。 woocommerce_variation_prices_price 和 woocommerce_variation_prices_regular_price 挂钩可用于修改此范围。

处理缓存价格

要处理 WooCommerce 3 中的缓存价格,请使用 woocommerce_get_variation_prices_hash 挂钩。此挂钩可以在不删除瞬态的情况下实现高效的价格更新。

其他注意事项

对于使用小部件过滤的产品价格,请使用以下方法挂钩:

  • woocommerce_price_filter_widget_min_amount
  • woocommerce_price_filter_widget_max_amount

以上是如何使用 Hook 有效修改 WooCommerce 产品价格(包括变体)?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板