WooCommerce 最低订单 - 用户帐户例外

WooCommerce Minimum Order - Exception on user account

我正在为客户建立批发电子商务网站。他们需要至少 300 美元的订单才能完成销售。客户必须登录才能访问网站并下订单。

有一个客户需要达到最小订单量才能移除。所以he/she可以成功下单$300以下。

这是我用来生成最小订单的当前代码:

add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
    add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );

    function wc_minimum_order_amount() {
        // Set this variable to specify a minimum order value
        $minimum = 354.93;

        if ( WC()->cart->total < $minimum ) {

            if( is_cart() ) {

                wc_print_notice( 
                    sprintf( 'Votre commande doit être au minimum de 300$ afin de se qualifier pour les prix de distributeur et pour compléter votre commande.' , 
                        woocommerce_price( $minimum ), 
                        woocommerce_price( WC()->cart->total )
                    ), 'error' 
                );

            } else {

                wc_add_notice( 
                    sprintf( 'Votre commande doit être au minimum de 300$ afin de se qualifier pour les prix de distributeur et pour compléter votre commande.' , 
                        woocommerce_price( $minimum ), 
                        woocommerce_price( WC()->cart->total )
                    ), 'error' 
                );

            }
        }

    }

我不知道如何调整客户帐户,以便在他们浏览网站时丢弃上述代码。

如有任何帮助,我们将不胜感激。

最简单,但对其他未来客户的可扩展性最低:

if ( WC()->cart->total < $minimum && get_current_user_id() != 999 )

其中 999 是您希望为其放弃 300 美元最低金额的客户的用户 ID。

您可以创建自定义功能并使用角色管理器类型的插件为最低要求不适用的所有客户分配特殊角色:

if ( WC()->cart->total < $minimum && ! current_user_can('ignore_cart_minimum' ) )

编辑

add_action( 'woocommerce_checkout_process', 'wc_minimum_order_amount' );
    add_action( 'woocommerce_before_cart' , 'wc_minimum_order_amount' );

    function wc_minimum_order_amount() {
        // Set this variable to specify a minimum order value
        $minimum = 354.93;

        if ( WC()->cart->total < $minimum && get_current_user_id() != 999 ) {

            if( is_cart() ) {

                wc_print_notice( 
                    sprintf( 'Votre commande doit être au minimum de 300$ afin de se qualifier pour les prix de distributeur et pour compléter votre commande.' , 
                        woocommerce_price( $minimum ), 
                        woocommerce_price( WC()->cart->total )
                    ), 'error' 
                );

            } else {

                wc_add_notice( 
                    sprintf( 'Votre commande doit être au minimum de 300$ afin de se qualifier pour les prix de distributeur et pour compléter votre commande.' , 
                        woocommerce_price( $minimum ), 
                        woocommerce_price( WC()->cart->total )
                    ), 'error' 
                );

            }
        }

    }