在结账时更改 Woocommerce 优惠券代码的位置会使购买按钮停止工作?
Changing the location of Woocommerce coupon code on checkout makes purchase button stop working?
好的,所以我到处寻找解决方案,但我不明白为什么会这样。从逻辑上讲这是没有意义的。我不是真正的编码员,但我知道一些基本的 PHP.
我使用以下代码将 Woo 结帐中的优惠券字段简单地移动到不同的位置:
/*** MOVE THE COUPON CODE ***/
remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_after_order_notes', 'woocommerce_checkout_coupon_form' );
添加此代码后,用于完成订单的"Buy Now" 结帐按钮在点击时没有任何作用,就像 JS 被禁用一样。
当代码被删除并且优惠券代码回到原来的位置时,按钮正常工作。
有没有其他人遇到过这种情况?太奇怪了。
您可以在此处查看页面(已实现上述代码):
在此先感谢大家的帮助!这是我自己寻找解决方案几个小时后的最后一招!
问题是由您使用的挂钩引起的,woocommerce_after_order_notes
。它导致 <form name="checkout">
在提交按钮 之前关闭 ,因此立即注册按钮实际上不再位于该表单内,因此在单击时无法提交,因为您的(转述的)标记是这样的:
<form name="checkout">
<!-- coupon code stuff -->
</form>
<button type="submit">Sign Up Now</button>
打开 Dev Tools,在网站上查看我的 video。您可以在“结帐”表单外看到“立即注册”按钮 - 只要我将其向上拖动到表单内,它就可以正常工作。
一个相对常见的误解是 "Coupon Code" 是一个结帐表单字段,实际上它是自己单独的 表单 ,所以当然 - 它不想直接嵌套在结帐表单中(表单中不能有表单)。
这意味着你有两个真正的选择,而不需要做一些疯狂的事情,比如在提交按钮上重新绑定点击处理程序来提交表单:
- 使用结帐表单后的挂钩,例如
woocommerce_after_checkout_form
而不是 woocommerce_after_order_notes
。
- 将优惠券表格保存在原来的位置。
好的,所以我到处寻找解决方案,但我不明白为什么会这样。从逻辑上讲这是没有意义的。我不是真正的编码员,但我知道一些基本的 PHP.
我使用以下代码将 Woo 结帐中的优惠券字段简单地移动到不同的位置:
/*** MOVE THE COUPON CODE ***/
remove_action( 'woocommerce_before_checkout_form', 'woocommerce_checkout_coupon_form', 10 );
add_action( 'woocommerce_after_order_notes', 'woocommerce_checkout_coupon_form' );
添加此代码后,用于完成订单的"Buy Now" 结帐按钮在点击时没有任何作用,就像 JS 被禁用一样。
当代码被删除并且优惠券代码回到原来的位置时,按钮正常工作。
有没有其他人遇到过这种情况?太奇怪了。
您可以在此处查看页面(已实现上述代码):
在此先感谢大家的帮助!这是我自己寻找解决方案几个小时后的最后一招!
问题是由您使用的挂钩引起的,woocommerce_after_order_notes
。它导致 <form name="checkout">
在提交按钮 之前关闭 ,因此立即注册按钮实际上不再位于该表单内,因此在单击时无法提交,因为您的(转述的)标记是这样的:
<form name="checkout">
<!-- coupon code stuff -->
</form>
<button type="submit">Sign Up Now</button>
打开 Dev Tools,在网站上查看我的 video。您可以在“结帐”表单外看到“立即注册”按钮 - 只要我将其向上拖动到表单内,它就可以正常工作。
一个相对常见的误解是 "Coupon Code" 是一个结帐表单字段,实际上它是自己单独的 表单 ,所以当然 - 它不想直接嵌套在结帐表单中(表单中不能有表单)。
这意味着你有两个真正的选择,而不需要做一些疯狂的事情,比如在提交按钮上重新绑定点击处理程序来提交表单:
- 使用结帐表单后的挂钩,例如
woocommerce_after_checkout_form
而不是woocommerce_after_order_notes
。 - 将优惠券表格保存在原来的位置。