如何设置WooCommerce的最低订购量(不包括运费)?

时间:2020-01-24 19:41:02

标签: woocommerce

是否有代码设置WooCommerce的最低订购量(不包括运费)?

有了这个,我可以设置最小订购量,但要有运费:

Function getTheFiles() {

	var dApp = DriveApp;
	var folderIter = dApp.getFolderByName("Shirts for other companies");
	var folder = folderIter.next();
	var filesIter = folder.getFiles();
	var dataBase = folder.getFoldersByName("database1").next();

	var i = 1;

	while(filesIter.hasNext()) {
		var file = filesIter.next();
		var filename = file.getName();
		
		if(filename = "mocking") {
			file.makeCopy(dataBase);
		}

		logger.log(filename);
		i++;
	}

1 个答案:

答案 0 :(得分:4)

正如我在评论中提到的,

您只需要从购物车总额中扣除运输费用即可。 您可以使用WC_Cart::get_shipping_total方法。

它看起来应该像这样:

<?php
/**
 * Set a minimum order amount for checkout
 */
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 = 16;
    $cart_total = WC()->cart->total; // Cart total incl. shipping
    $shipping_total = WC()->cart->get_shipping_total();  // Cost of shipping
    if ( ($cart_total - $shipping_total) < $minimum ) {

        if( is_cart() ) {

            wc_print_notice( 
                sprintf( 'Стойност на Вашата поръчка: %s <p>Минималната стойност на поръчката към ресторанта: %s' , 
                    wc_price( WC()->cart->total ), 
                    wc_price( $minimum )
                ), 'error' 
            );

        } else {

            wc_add_notice( 
                sprintf( 'Стойност на Вашата поръчка: %s <p>Минималната стойност на поръчката към ресторанта: %s' , 
                    wc_price( WC()->cart->total ), 
                    wc_price( $minimum )
                ), 'error' 
            );

        }
    }
}
?>