Sí, «Managing Stock» es una buena característica para asegurarse de no exagerar un producto determinado en función del stock que tiene en su almacén. Sin embargo, ¿qué pasa si también necesita tener un «límite de ventas diario»? Digamos que no puede vender más de 3 de una identificación de producto determinada en un día determinado?
Esta es una funcionalidad interesante que también es útil para que aprenda a Obtenga los pedidos de hoycómo recorrer los pedidos para encontrar una identificación de producto específica y sumar sus cantidades, y finalmente cómo usar el wooCommerce_is_purchasable Filtrar para establecer si se puede comprar un producto o no (lo que significa que el CART agregue o no). ¡Disfrutar!
Php Snippet: Nene la venta si un producto ha vendido más de x hoy
/** * @snippet Limit Daily Sales For Product ID * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 7 * @community https://businessbloomer.com/club/ */ add_filter( 'woocommerce_is_purchasable', 'bbloomer_not_purchasable_after_daily_limit', 9999, 2 ); function bbloomer_not_purchasable_after_daily_limit( $is_purchasable, $product ) { $limit_product_id = 12345; // SET YOUR PRODUCT ID HERE if ( $product->get_id() !== $limit_product_id ) return $is_purchasable; // GET TODAYS ORDERS AND LOOP $all_orders = wc_get_orders( array( 'limit' => -1, 'date_created' => date( 'Y-m-d' ), 'return' => 'ids', ) ); $count = 0; foreach ( $all_orders as $all_order ) { $order = wc_get_order( $all_order ); $items = $order->get_items(); foreach ( $items as $item ) { $product_id = $item->get_product_id(); if ( $product_id && $product_id == $limit_product_id ) { $count = $count + absint( $item['qty'] ); } } } // LIMIT 3 DAILY SALES if ( $count >= 3 ) return false; return $is_purchasable; }