Hay momentos en que vende productos gratuitos para brindar a los clientes acceso a una membresía, un curso en línea o por otras razones. En estos casos, es posible que no desee enviar el «Orden completado«Correo electrónico o obtenga el»Nuevo pedido«Notificación transaccional, para que pueda evitar enviar y recibir cientos de correos electrónicos.
Por supuesto, aún desea mantener los correos electrónicos de pedido para cantidades superiores a $ 0. Aquí está la solución.
Php Snippet: deshabilitar los correos electrónicos del pedido de WooCommerce si total = 0
/** * @snippet Disable Emails for Free Orders - WooCommerce * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 8 * @community https://businessbloomer.com/club/ */ // To target additional emails you can add EMAIL_ID to this filter: // "woocommerce_email_recipient_EMAIL_ID" // Find EMAIL_ID: businessbloomer.com/woocommerce-add-extra-content-order-email add_filter( 'woocommerce_email_recipient_customer_completed_order', 'bbloomer_disable_order_email_if_free', 9999, 2 ); add_filter( 'woocommerce_email_recipient_new_order', 'bbloomer_disable_order_email_if_free', 9999, 2 ); function bbloomer_disable_order_email_if_free( $recipient, $order ) { $page = $_GET['page'] = isset( $_GET['page'] ) ? $_GET['page'] : ''; if ( 'wc-settings' === $page ) { return $recipient; } if ( (float) $order->get_total() === '0.00' ) $recipient = ''; return $recipient; }