【发布时间】:2017-11-20 18:22:52
【问题描述】:
当且仅当管理员通过管理区域将产品添加到现有订单时,我想设置 50% 的折扣。
我试过这个:
function admin_set_custom_price( $item, $item_id ) {
$item->set_subtotal( ( ( ( 100 - 50 ) * $item->get_subtotal() ) / 100 ) );
$item->set_total( ( ( ( 100 - 50 ) * $item->get_total() ) / 100 ) );
$item->apply_changes();
$item->save();
return $item;
}
add_filter( 'woocommerce_ajax_order_item', 'admin_set_custom_price', 10, 2 );
结果是添加商品时的价格就是原价。
如果我只是刷新页面,它会显示 50% 折扣的价格。
我还需要做什么,在添加时立即显示带有折扣的价格而不需要刷新页面?
看起来有些东西正在覆盖它,因为它被保存了我猜是因为刷新时价格是正确的。
谈论简单/多变的产品类型。
【问题讨论】:
标签: wordpress woocommerce hook-woocommerce