【发布时间】:2021-04-18 16:31:54
【问题描述】:
如果已添加优惠券或客户在结帐页面上添加优惠券,我们希望在 WooCommerce 结帐时隐藏“有优惠券?添加...”。
目前我们在下面使用此代码,当客户在购物车页面上输入优惠券然后导航到结帐页面时,它就会起作用。在这种情况下,“有优惠券?添加一个...”消息不可见。如果购物车页面上没有添加优惠券,则该消息可见。
这工作正常!但是当客户在结帐页面添加优惠券时,它就不起作用了。
1.) 我们收到“已添加优惠券”消息,但要添加的优惠券消息仍然可见,并且优惠券未在订单表中计算。 => 页面刷新后一切正常。
2.) 当客户在结账时移除优惠券时,我们会收到优惠券已移除的消息,但折扣仍显示在订单表中。 => 页面刷新后,它会再次显示所有内容。
所以现在我正在尝试在添加或删除优惠券后刷新页面。但是我很难获得正确的事件。我想我们必须通过js来做到这一点?或者有没有PHP的方法?
add_filter( 'woocommerce_coupons_enabled', 'woocommerce_coupons_enabled_checkout' );
function woocommerce_coupons_enabled_checkout( $coupons_enabled ) {
global $woocommerce;
if ( ! empty( $woocommerce->cart->applied_coupons ) ) {
return false;
}
return $coupons_enabled;
}
【问题讨论】:
-
通常在购物车或结帐时添加优惠券时,会显示应用的优惠券并刷新总计皮重......所以如果不是这种情况,还有其他问题,比如你的主题,a插件或您制作的其他一些自定义代码……
-
谢谢。是的,通常...检查的唯一方法是停用所有或?
-
是的,尝试在此之前进行数据库备份……
-
来自支付插件。所以我必须联系开发商。谢谢
-
有没有办法找出插件的哪一部分造成了这个问题?所以也许我可以把这些信息分享给他们,以便他们能更快地解决这个问题……这很痛苦:(
标签: wordpress woocommerce checkout