woocommerce以编程方式应用优惠券错误

约瑟夫·钱伯斯

这是我正在使用的代码:

if (!is_admin()):
add_action( 'woocommerce_before_cart', 'apply_matched_coupons' );
//add_action('woocommerce_before_cart_table', 'apply_matched_coupons');
//add_action('woocommerce_before_checkout_form', 'apply_matched_coupons');

function apply_matched_coupons() {
global $woocommerce;
$coupon_code = 'somecodehere';

if ( $woocommerce->cart->has_discount( $coupon_code ) ) return;

    if ( $woocommerce->cart->cart_contents_total >= 1 ) {
        $woocommerce->cart->add_discount( $coupon_code );
        wc_print_notices();
    }

}

endif;

我遇到的问题是,当我转到结帐页面时,优惠券仍然适用。它没有应用在购物车上,这是理想的结果,但是我完全不希望在这种情况下应用它。

有什么帮助吗?

恩维尤斯

根据您的解释,听起来您应该使用woocommerce_add_to_cart挂钩,当产品成功添加到购物车后挂钩就会运行。我也不认为您应该使用is_admin(),因为这只会检查您是否在管理员页面上,而不是当前用户是否是管理员。

我将执行以下操作:

add_action( 'woocommerce_add_to_cart', 'apply_matched_coupons' );

function apply_matched_coupons() {
    // If the current user is a shop admin
    if ( current_user_can( 'manage_woocommerce' ) ) return;
    // If the user is on the cart or checkout page
    if ( is_cart() || is_checkout() ) return;

    $coupon_code = 'somecodehere';

    if ( WC()->cart->has_discount( $coupon_code ) ) return;

    WC()->cart->add_discount( $coupon_code );
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

以编程方式检查优惠券是否对WooCommerce中的用户有效

来自分类Dev

Woocommerce 优惠券 - 无法以编程方式使用 update_post_meta 更新产品 ID

来自分类Dev

以编程方式将优惠券代码应用于购物车/订单

来自分类Dev

以编程方式将优惠券代码应用于购物车/订单

来自分类Dev

从WooCommerce获取优惠券描述以订购已应用的优惠券

来自分类Dev

使用优惠券简码形式检查优惠券是否在WooCommerce中应用

来自分类Dev

Magento 1.8-以编程方式添加优惠券代码

来自分类Dev

应用优惠券时隐藏特定的送货方式

来自分类Dev

检查woocommerce是否应用了任何优惠券代码

来自分类Dev

在WooCommerce中应用优惠券后如何舍入价格?

来自分类Dev

限制为一张应用的优惠券,删除 Woocommerce 中其他以前应用的优惠券

来自分类Dev

显示优惠券说明woocommerce

来自分类Dev

通过 URL 添加 WooCommerce 优惠券

来自分类Dev

如何以编程方式在递归中创建和兑换优惠券?

来自分类Dev

如果在Woocommerce中未应用优惠券,则自动对用户角色应用折扣

来自分类Dev

WooCommerce智能优惠券覆盖“可用优惠券”位置

来自分类Dev

替换为“成功应用优惠券代码”。WooCommerce中的消息

来自分类Dev

在Woocommerce中应用特定优惠券时隐藏免费送货

来自分类Dev

关于应用或删除优惠券的woocommerce重新加载购物车页面

来自分类Dev

在 WooCommerce 中应用特定优惠券代码时发送电子邮件通知

来自分类Dev

仅当在 Woocommerce 中应用优惠券时才允许购买特定产品

来自分类Dev

Woocommerce:特定产品的强制性优惠券

来自分类Dev

每个订单项的WooCommerce优惠券代码

来自分类Dev

WooCommerce自定义优惠券折扣

来自分类Dev

检查WooCommerce优惠券是否已经存在

来自分类Dev

允许的用户角色限制WooCommerce优惠券的使用

来自分类Dev

在WooCommerce结帐小计之前移动优惠券表格

来自分类Dev

禁用WooCommerce中订阅产品的优惠券

来自分类Dev

Woocommerce:特定产品的强制性优惠券

Related 相关文章

  1. 1

    以编程方式检查优惠券是否对WooCommerce中的用户有效

  2. 2

    Woocommerce 优惠券 - 无法以编程方式使用 update_post_meta 更新产品 ID

  3. 3

    以编程方式将优惠券代码应用于购物车/订单

  4. 4

    以编程方式将优惠券代码应用于购物车/订单

  5. 5

    从WooCommerce获取优惠券描述以订购已应用的优惠券

  6. 6

    使用优惠券简码形式检查优惠券是否在WooCommerce中应用

  7. 7

    Magento 1.8-以编程方式添加优惠券代码

  8. 8

    应用优惠券时隐藏特定的送货方式

  9. 9

    检查woocommerce是否应用了任何优惠券代码

  10. 10

    在WooCommerce中应用优惠券后如何舍入价格?

  11. 11

    限制为一张应用的优惠券,删除 Woocommerce 中其他以前应用的优惠券

  12. 12

    显示优惠券说明woocommerce

  13. 13

    通过 URL 添加 WooCommerce 优惠券

  14. 14

    如何以编程方式在递归中创建和兑换优惠券?

  15. 15

    如果在Woocommerce中未应用优惠券,则自动对用户角色应用折扣

  16. 16

    WooCommerce智能优惠券覆盖“可用优惠券”位置

  17. 17

    替换为“成功应用优惠券代码”。WooCommerce中的消息

  18. 18

    在Woocommerce中应用特定优惠券时隐藏免费送货

  19. 19

    关于应用或删除优惠券的woocommerce重新加载购物车页面

  20. 20

    在 WooCommerce 中应用特定优惠券代码时发送电子邮件通知

  21. 21

    仅当在 Woocommerce 中应用优惠券时才允许购买特定产品

  22. 22

    Woocommerce:特定产品的强制性优惠券

  23. 23

    每个订单项的WooCommerce优惠券代码

  24. 24

    WooCommerce自定义优惠券折扣

  25. 25

    检查WooCommerce优惠券是否已经存在

  26. 26

    允许的用户角色限制WooCommerce优惠券的使用

  27. 27

    在WooCommerce结帐小计之前移动优惠券表格

  28. 28

    禁用WooCommerce中订阅产品的优惠券

  29. 29

    Woocommerce:特定产品的强制性优惠券

热门标签

归档