Woocommerce - 为每个类别设置最低订单价值

时间:2016-10-20 01:40:59

标签: wordpress woocommerce

我希望客户收到错误消息(在购物车和结帐页面)并阻止结帐,因为他们没有为购物车中的每个产品类别订购超过100欧元的费用。

在我的商店里,我有6个品牌,这些品牌在产品类别中分开(因此我只有6个产品类别)。因此,如果客户的购物车中有品牌A的产品,他应该在购物车中至少有100欧元的该品牌,以便完成订单。如果购物车包含多个品牌,那么客户应该在购物车中订购每个品牌至少100欧元。

最低100欧元适用于所有品牌(产品类别),因此无需为特定类别设置特定最低标准。所有品牌都有相同的最低要求。 EUROS是我的商店货币。

最后,但并非最不重要的是,当客户使用以下代码应用优惠券时,我希望禁用此规则:NOMOQ

我有这个代码来设置一般的最小订单,并允许使用优惠券禁用它:

    /**
 * Give the site a minimum order amount that can be avoided by using a coupon code
 *
 * @return void
 */
public function minimum_order_amount() {

    // Set this variable to specify a minimum order value
    $minimum = 100;

    // No minimum purchase if a specific coupon code is used
    if ( WC()->cart->has_discount( 'nomoq' ) ) {
        return;
    }

    if ( WC()->cart->total < $minimum ) {
        $message = sprintf(
            'You must order at least a total of %s (excluding shipping and VAT) of one brand or a combination of brands. <a title="Find out more!" href="%s" target="_blank">Find out more!</a>',
            wc_price( $minimum ),
            site_url( '/ordering/#moq' )
        );

        if ( is_cart() ) {
            wc_print_notice( $message, 'error' );
        } else {
            wc_add_notice( $message, 'error' );
        }
    }
}

谁可以帮我修改此代码以满足我的需求?谢谢!

1 个答案:

答案 0 :(得分:0)

//在签出之前设置特定类别的最大产品数量

add_action( 'woocommerce_check_cart_items', 'spyr_set_max_campioni' );
function spyr_set_max_campioni() {
// Only run in the Cart or Checkout pages
if( is_cart() || is_checkout() ) {
global $woocommerce, $product;
$cart_num_products = 0;
foreach ( $woocommerce->cart->cart_contents as $product ) {
// See if any product is from the campioni category or not
if ( has_term( 'campioni', 'product_cat', $product['product_id'] )) {
$cart_num_products++;
}
}
wc_add_notice( sprintf( 'You can buy a maximum of 3 samples.'
Currently there are in the cart:% s. ',
$cart_num_products
'error' );
}
}
}

并且,您也可以查看此链接 这很有帮助

https://docs.woocommerce.com/document/minmax-quantities/

https://wordpress.org/plugins/minimum-purchase-for-woocommerce/screenshots

https://wordpress.org/plugins/woocommerce-incremental-product-quantities/screenshots/