【问题标题】:WooCommerce Minimum Order - Exception on user accountWooCommerce 最小订单 - 用户帐户例外
【发布时间】:2015-01-31 06:11:46
【问题描述】:

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

有一个客户需要移除最低订单。所以他/她可以成功下单$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' 
                );

            }
        }

    }

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

任何帮助将不胜感激。

【问题讨论】:

  • 你需要自己尝试一些东西。您需要弄清楚您的用户是如何存储的并将某些内容保存为元数据,例如如果它是用户 = user_meta。然后,您可以查询并应用正确的最小订单。

标签: wordpress woocommerce


【解决方案1】:

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

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' 
                );

            }
        }

    }

【讨论】:

  • 谢谢。如何将其添加到我的代码中。我不断产生语法错误。
  • 但是什么样的语法错误?这应该告诉你缺少什么。我已经编辑了您的代码以包含我的代码。看起来不错,但我也没有测试。
猜你喜欢
  • 2019-10-09
  • 1970-01-01
  • 2018-12-24
  • 1970-01-01
  • 2015-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多