📌  相关文章
📜  woocommerce 通过添加到购物车应用优惠券 (1)

📅  最后修改于: 2023-12-03 14:48:31.661000             🧑  作者: Mango

使用 Woocommerce 将优惠券添加到购物车

在 Woocommerce 中,我们可以通过编写自定义代码,将优惠券添加到购物车中。这样做的好处在于,当客户达到一定的条件,我们可以自动为其应用优惠券,提升购物体验。下面我们将介绍如何实现这一功能。

步骤 1:注册优惠券

在 Woocommerce 后台,我们需要先创建一个优惠券。在“营销”菜单下点击“优惠券”,即可创建。

要添加到购物车中的优惠券必须是「use-applied」类型的卡券。可以参考以下 API 文档。

API文档: 
Location: /coupons
Method: POST
Title: Create coupon
Argument (required)
name
prefix
amount
type
quantity
expire_limit
status
to
code
count

其中,type 是优惠券的类型,quantity 是可以应用该优惠券的最大数量(-1 表示没有限制)。

步骤 2:编写代码

下面我们来编写代码,将优惠券添加到购物车中。

<?php
/**
 * Hook into the add-to-cart action to apply a coupon automatically based on the cart value.
 *
 * Add the code below to your child theme's functions.php file or to a custom plugin.
 */
 
function apply_coupon_based_on_cart_value( $cart ) {
 
    // Set the minimum cart total for the coupon to be applied
    $minimum_cart_total = 50;
 
    // Set the coupon code that will be applied
    $coupon_code = 'BLACKFRIDAY';
 
    if ( $cart->subtotal >= $minimum_cart_total && ! $cart->has_discount( $coupon_code ) ) {
        $cart->apply_coupon( $coupon_code );
    }
 
}
add_action( 'woocommerce_add_to_cart', 'apply_coupon_based_on_cart_value' );

在这段代码中,我们使用了 woocommerce_add_to_cart 动作。该动作会在商品被添加到购物车中时触发。

我们在这里定义了两个变量,$minimum_cart_total 和 $coupon_code。如果购物车总价大于或等于 $minimum_cart_total,并且我们尚未应用优惠券,则将 $coupon_code 应用于购物车。

步骤 3:测试代码

最后,我们需要测试代码是否正常工作。将代码添加到运行环境中(如 WordPres 主题的 functions.php 文件中),并添加足够的商品到购物车中,确保购物车总价超过 $minimum_cart_total。

如果代码正常工作,我们可以在购物车页面上看到「优惠券已应用」的提示,且总价已经减去了优惠券的金额。

以上就是使用 Woocommerce 将优惠券添加到购物车的完整步骤。希望这篇文章能够对你有所帮助!