How to set minimum and maximum quantities or amount for a store?
-
Hello, I have the WCFM plugin installed in my site https://autoplusperformance.com. I am unable to find if there any way to set minimum and maximum quantities or amount for orders for a vendor’s store? Please suggest if there is any way to set this.
The page I need help with: [log in to see the link]
-
You need the Min/max quantities for woocommerce plugin for that. and for ammount use this code:
`/* View error notice when you click Proceed to cekout, just before checkout. Coupon acceptance – when using a coupon acceptance of an order for less than the minimum amount order allow to next step
This modified code adds support for:
1. Price in admin settings with VAT and showing in error notice in VAT !
2. Showing error notice in ceckout (minimum purcharse)
3. Reflecting the use woo coupons (disable minimum purcharse in use coupon for concrete vendor and order continuation)*/
add_action( ‘woocommerce_cart_has_errors’, ‘bbloomer_add_jscript_checkout’, 10);function bbloomer_add_jscript_checkout() {
if( is_cart() || is_checkout() ) {
$vendor_wise_cart_total = array();foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$cart_product_id = $cart_item[‘product_id’];
$cart_product = get_post( $cart_product_id );
if( !isset( $vendor_wise_cart_total[$cart_product->post_author] ) ) $vendor_wise_cart_total[$cart_product->post_author] = 0;
$vendor_wise_cart_total[$cart_product->post_author] += round($cart_item[‘line_total’]+$cart_item[‘line_tax’],2);
}
if( !empty( $vendor_wise_cart_total ) ) {
foreach( $vendor_wise_cart_total as $vendor_id => $cart_total ) {
if( wcfm_is_vendor( $vendor_id ) ) {
$wcfm_min_order_amt = get_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, true );
if( $wcfm_min_order_amt && ( $wcfm_min_order_amt > $cart_total ) ) {
$vendor_label = wcfm_get_vendor_store( $vendor_id ) . ‘ ‘ . apply_filters( ‘wcfm_sold_by_label’, $vendor_id, __( ‘Store’, ‘wc-frontend-manager’ ) );
echo ‘<ul class=”woocommerce-error” role=”alert”>
<li>
‘.$vendor_label.’ minimálna hodnota objednávky u tohto predajcu musí by? ‘.wc_price( $wcfm_min_order_amt ).’, pridajte nieko?ko ?al?ích polo?iek z tohto obchodu! Aktuálna suma vlo?ená od tohto predajcu je ‘.$cart_total.’ € </li>
</ul>’;
}
}
}
}}
}/* View cart notice for vendor minimum purchase over xyz amount + vendor shipping settings setting in administration */
add_action( ‘end_wcfm_vendor_settings’, function( $vendor_id ) {
global $WCFM, $WCFMmp;
$wcfm_min_order_amt = get_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, true );
?>
<div class=”page_collapsible” id=”wcfm_settings_form_min_order_amount_head”>
<label class=”wcfmfa fa-cart-plus”></label>
<?php _e(‘Min Order Amount’, ‘wc-frontend-manager’); ?><span></span>
</div>
<div class=”wcfm-container”>
<div id=”wcfm_settings_form_vendor_invoice_expander” class=”wcfm-content”>
<?php
$WCFM->wcfm_fields->wcfm_generate_form_field( array(
“_wcfm_min_order_amt” => array(‘label’ => __(‘Minimum Amount’, ‘wc-frontend-manager’), ‘type’ => ‘number’, ‘class’ => ‘wcfm-text wcfm_non_negative_input wcfm_ele’, ‘label_class’ => ‘wcfm_title wcfm_ele’, ‘value’ => $wcfm_min_order_amt ),
) );
?>
</div>
</div>
<div class=”wcfm_clearfix”></div>
<?php
}, 500 );
add_filter( ‘wcfm_marketplace_settings_fields_general’, function( $setting_fields, $vendor_id ) {
if( !wcfm_is_vendor() ) {
$wcfm_min_order_amt = get_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, true );
$wcfm_min_order_amt_field = array(
“_wcfm_min_order_amt” => array(‘label’ => __(‘Minimum Amount’, ‘wc-frontend-manager’), ‘type’ => ‘number’, ‘class’ => ‘wcfm-text wcfm_non_negative_input wcfm_ele’, ‘label_class’ => ‘wcfm_title wcfm_ele’, ‘value’ => $wcfm_min_order_amt ),
);
$setting_fields = array_merge( $wcfm_min_order_amt_field, $setting_fields );
}
return $setting_fields;
}, 50, 2 );
add_action( ‘woocommerce_single_product_summary’, function() {
global $WCFM, $WCFMmp, $post;
$vendor_id = 0;
$product_id = 0;
if( is_product() && $post && is_object( $post ) ) {
$product_id = $post->ID;
}
if( !$product_id ) return;
$vendor_id = wcfm_get_vendor_id_by_post( $product_id );
if( !$vendor_id ) return;
$wcfm_min_order_amt = get_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, true );
if( !$wcfm_min_order_amt ) return;
echo ‘<div class=”wcfm_clearfix”></div><div class=”wcfmmp_shipment_processing_display”>’. __( ‘Minimum order amount should be ‘, ‘wc-multivendor-marketplace’ ) . ‘ ‘ . wc_price( $wcfm_min_order_amt ) .'</div><div class=”wcfm_clearfix”></div>’;
}, 35 );
add_action( ‘wcfm_vendor_settings_update’, function( $vendor_id, $wcfm_settings_form ) {
global $WCFM, $WCFMmp;
if( isset( $wcfm_settings_form[‘_wcfm_min_order_amt’] ) ) {
$wcfm_min_order_amt = $wcfm_settings_form[‘_wcfm_min_order_amt’];
update_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, $wcfm_min_order_amt );
}
}, 500, 2 );
add_action( ‘woocommerce_check_cart_items’, function() {
global $WCFM, $WCFMmp;
$return = true;
if( is_cart() || is_checkout() ) {
$vendor_wise_cart_total = array();
$applied_coupons = WC()->cart->get_applied_coupons();
foreach ( WC()->cart->get_cart() as $cart_item_key => $cart_item ) {
$cart_product_id = $cart_item[‘product_id’];
$cart_product = get_post( $cart_product_id );
if( !isset( $vendor_wise_cart_total[$cart_product->post_author] ) ) $vendor_wise_cart_total[$cart_product->post_author] = 0;
//echo $test = $cart_item[‘line_total’]+$cart_item[‘line_tax’];
$vendor_wise_cart_total[$cart_product->post_author] += round($cart_item[‘line_total’]+$cart_item[‘line_tax’],2);
}
if( !empty( $vendor_wise_cart_total ) ) {
foreach( $vendor_wise_cart_total as $vendor_id => $cart_total ) {
if( wcfm_is_vendor( $vendor_id ) && empty($applied_coupons) ) {
$wcfm_min_order_amt = get_user_meta( $vendor_id, ‘_wcfm_min_order_amt’, true );
if( $wcfm_min_order_amt && ( $wcfm_min_order_amt > $cart_total ) ) {
wc_clear_notices();
$vendor_label = wcfm_get_vendor_store( $vendor_id ) . ‘ ‘ . apply_filters( ‘wcfm_sold_by_label’, $vendor_id, __( ‘Store’, ‘wc-frontend-manager’ ) );
wc_add_notice( sprintf( __( “%s minimálna hodnota objednávky u tohto predajcu musí by? %s, pridajte nieko?ko ?al?ích polo?iek z tohto obchodu! Aktuálna suma vlo?ená od tohto predajcu je “.$cart_total.” € “, “wc-frontend-manager” ), $vendor_label, wc_price( $wcfm_min_order_amt ) ), ‘error’ );
$return = false;
break;
}
}
}
}
}
return $return;
}, 1000 );`Okay. Thanks. How do I set the minimum order amount for a vendor?
- The topic ‘How to set minimum and maximum quantities or amount for a store?’ is closed to new replies.