2016-10-20 7 views
0

Ich möchte, dass Kunden eine Fehlermeldung erhalten (auf der Warenkorb- und Kasse-Seite) und ihre Kasse sperren, wenn sie nicht mehr als 100 € für jede Produktkategorie in ihrem Warenkorb bestellt haben.Woocommerce - Geben Sie einen Mindestbestellwert pro Kategorie ein

In meinem Shop trage ich 6 Marken, die in Produktkategorien getrennt sind (also habe ich nur 6 Produktkategorien). Wenn also ein Kunde Produkte der Marke A im Warenkorb hat, sollte er mindestens 100 Euro im Warenkorb haben, damit die Bestellung abgeschlossen werden kann. Wenn der Einkaufswagen mehrere Marken enthält, sollte der Kunde mindestens 100 € pro Marke in seinem Warenkorb bestellen.

Das Minimum von € 100 ist für alle Marken (Produktkategorien) generisch, so dass keine spezifischen Mindestwerte für bestimmte Kategorien festgelegt werden müssen. Alle Marken haben das gleiche Minimum. EURO sind meine Ladenwährung.

Und last, but not least, möchte ich diese Regel deaktiviert werden, wenn der Kunde den Gutschein mit diesem Code gilt: noMOQ

ich diesen Code haben eine allgemeine Mindestbestell zu setzen und lassen Sie es mit deaktiviert sein der Kupon:

/** 
* 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'); 
     } 
    } 
} 

Wer mir diesen Code ändern helfen kann meine Bedürfnisse anpassen? Vielen Dank!

Antwort

0

// Legen Sie eine maximale Anzahl von Produkten aus bestimmten Kategorie vor

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

Check-out Und Sie können auch diese Verbindung überprüfen ist es hilfreich

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/

Verwandte Themen