https://tdestudiodesign.com/wp-content/plugins/whatsapp/style.css

En Business Bloomer, vendo un paquete de productos, y no utilizo un complemento de Bundles para eso. Por lo tanto, el desafío era agregar mediante programación una lista de productos al pedido al comprar, una vez que se compra el producto del paquete.

Esta es una forma sorprendente de ahorrar tiempo para el cliente, ya que no necesitan agregar manualmente cada producto al carrito. En el fondo, después de una compra exitosa, algún código mágico (que encuentra a continuación) agrega productos al pedido, establece su precio a $ 0.00 (de modo que el total de pedidos no se altere) y guarde el pedido. ¡Disfrutar!

Esta captura de pantalla puede ser demasiado pequeña, pero básicamente el primer producto es el único comprado, ¡mientras que los siguientes se agregan más adelante por el siguiente código!

Php Snippet: agregue programáticamente el producto a una orden de WooCommerce pagada

Tenga en cuenta: el siguiente código busca a través de los elementos del pedido para ver si el producto id = «123» está presente. Este es el producto «Bundle».

Cuando eso se compra, mi código se desencadena y agrega al Producto CART ID = «456». Por supuesto, puede agregar múltiples productos agregando tantos $ orden-> add_product líneas como desees.

 /**  * @snippet       Add Product @ WooCommerce Order  * @how-to        businessbloomer.com/woocommerce-customization  * @author        Rodolfo Melogli, Business Bloomer  * @compatible    WooCommerce 7  * @community     https://businessbloomer.com/club/  */  add_action( 'woocommerce_payment_complete', 'bbloomer_add_products_to_order', 9999 );  function bbloomer_add_products_to_order( $order_id ) { $order = wc_get_order( $order_id ); foreach ( $order->get_items() as $item_id => $item ) { $product_id = $item->get_product_id(); if ( $product_id && $product_id == 123 ) { $order->add_product( wc_get_product( 456 ), 1, array( 'subtotal' => 0, 'total' => 0 ) ); $order->save(); //wc_downloadable_product_permissions( $order_id, true ); ADD THIS IF ADDED PRODUCT IS DOWNLOADABLE          //wc_update_product_stock( wc_get_product( 456 ), 1, 'decrease' ); ADD THIS IF YOU WANT TO REDUCE PRODUCT STOCK BY 1 break; } } } 

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *