通过 API 在 woocommerce 中创建客户价格
Creating a customer price in woocommerce via API
我找到了一个创建客户特定定价的插件,但似乎是一个外部 API 调用,似乎不是我正在寻找的解决方案。
https://woocommerce.com/products/wisdm-customer-specific-pricing/
我对购物车的工作原理和产品的存储方式感到困惑。但是基于这个 post 它向我展示了如何用客户 ID 替换购物车价格,并且 sku 被传递给 API。
我用这个 ticket 开始我的回答
所以我需要弄清楚的重要事情是如何调用购物车,遍历每个产品并获取它的产品 SKU,然后覆盖价格。
我在我的主题 functions.php 中添加了以下内容,以更改我的购物车以根据我的客户 API 定价显示正确的定价。这会循环遍历我所有的购物车商品,然后调用 API 和 returns 特定客户和 sku 的价格。
add_action( 'woocommerce_before_calculate_totals', 'add_custom_price' );
function add_custom_price( $cart_object ) {
foreach ( $cart_object->cart_contents as $key => $value ) {
$response = get_api_response($value['data']->get_sku(), $customer_id);
$custom_price = $response->price;
$value['data']->set_price($custom_price);
}
}
我找到了一个创建客户特定定价的插件,但似乎是一个外部 API 调用,似乎不是我正在寻找的解决方案。
https://woocommerce.com/products/wisdm-customer-specific-pricing/
我对购物车的工作原理和产品的存储方式感到困惑。但是基于这个 post 它向我展示了如何用客户 ID 替换购物车价格,并且 sku 被传递给 API。
我用这个 ticket 开始我的回答
所以我需要弄清楚的重要事情是如何调用购物车,遍历每个产品并获取它的产品 SKU,然后覆盖价格。
我在我的主题 functions.php 中添加了以下内容,以更改我的购物车以根据我的客户 API 定价显示正确的定价。这会循环遍历我所有的购物车商品,然后调用 API 和 returns 特定客户和 sku 的价格。
add_action( 'woocommerce_before_calculate_totals', 'add_custom_price' );
function add_custom_price( $cart_object ) {
foreach ( $cart_object->cart_contents as $key => $value ) {
$response = get_api_response($value['data']->get_sku(), $customer_id);
$custom_price = $response->price;
$value['data']->set_price($custom_price);
}
}