Permite definir la cantidad de veces que, como máximo, se puede vender un producto en un día.
add_filter('woocommerce_is_purchasable', 'wc_limite_ventas_diarias', 9999, 2);
function wc_limite_ventas_diarias($is_purchasable, $product) {
$limit_product_id = id-producto; //ID del producto cuya venta diaria queremos limitar
if ($product - > get_id() !== $limit_product_id) return $is_purchasable;
// Obtenemos los pedidos diarios y volvemos al 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']);
}
}
}
// Límite de cantidad de ventas por día (cambiar número por el que queramos)
if ($count >= 100) return false;
return $is_purchasable;
}