我们销售的是步道,而这些步道在WooCommerce中被称为“产品”。 >> 查看此链接
尝试点击“Let's Play”链接,它将带您进入结账页面。 >> (截图)
每条步道的价格都设置为零(在WooCommerce管理中),因为定价是“按人数计算”。
我们不得不使用以下代码片段使产品能够正常运作,同时保持“$0”的价格。
在将产品设置为“可用”状态、价格为“$0”后,我们成功地在结帐页面上添加了一些必填字段,用于为每个访问者选择的“人数”添加“费用”。仅当用户在结帐页面上选择玩家数量字段时,订单总计才会更新,请注意“选择玩家数量”选项。 (屏幕截图) 问题: 每当我们应用“优惠券”(例如“enjoy10” - 10%折扣)时,它仅适用于目前设置为“$0”的产品价格。因此,从技术上讲,优惠券代码不起作用,只应用了“$0”折扣,因为优惠券不适用于订单总计,它只适用于设置为“$0”的产品价格,因为我们是按照每个人收费。
我希望优惠券代码适用于最终订单总额,而不仅仅是产品价格。 (查看此屏幕录像)
我们不得不使用以下代码片段使产品能够正常运作,同时保持“$0”的价格。
add_filter( 'woocommerce_is_purchasable', 'wpa_109409_is_purchasable', 10, 2 );
function wpa_109409_is_purchasable( $purchasable, $product ){
if( $product->get_price() >= 0 )
$purchasable = true;
return $purchasable;
}
在将产品设置为“可用”状态、价格为“$0”后,我们成功地在结帐页面上添加了一些必填字段,用于为每个访问者选择的“人数”添加“费用”。仅当用户在结帐页面上选择玩家数量字段时,订单总计才会更新,请注意“选择玩家数量”选项。 (屏幕截图) 问题: 每当我们应用“优惠券”(例如“enjoy10” - 10%折扣)时,它仅适用于目前设置为“$0”的产品价格。因此,从技术上讲,优惠券代码不起作用,只应用了“$0”折扣,因为优惠券不适用于订单总计,它只适用于设置为“$0”的产品价格,因为我们是按照每个人收费。
我希望优惠券代码适用于最终订单总额,而不仅仅是产品价格。 (查看此屏幕录像)