torben
Necesito determinar si el pedido es un pedido que necesita el envío de bienes físicos.
Entonces puedo verificar si el pedido tiene productos físicos o si solo tiene productos digitales/virtuales.
¿Cómo puedo hacer esto de la mejor manera?
Recibo todos los artículos del pedido con:
$order = new WC_Order($order_id);
$items = $order->get_items();
Podrías hacer algo como esto. Debe recorrer los artículos del pedido y obtener las identificaciones del producto para usar el método WC_Product::is_virtual();
$order = new WC_Order($order_id);
foreach ($order->get_items() as $order_item){
$item = wc_get_product($order_item->get_product_id());
if (!$item->is_virtual()) {
// this order contains a physical product do what you want here or return false
}
}
¿Ha sido útil esta solución?
Tu feedback nos ayuda a saber si la solución es correcta y está funcionando. De esta manera podemos revisar y corregir el contenido.