Este es un requisito de WooCommerce bastante poco común, pero especialmente para los productos descargables, el correo electrónico de pedido completado es como importante, y los clientes pueden terminar pidiéndole que los reinvierta todos sus correos electrónicos de pedidos anteriores.
Este es un fragmento interesante, ya que presenta funcionalidades importantes: obtener pedidos facturando el correo electrónico, recorriendo los resultados y vuelve a activar el correo electrónico de pedido completado cada vez que se publica un parámetro de URL de administración específico. ¡Disfrutar!
Php Snippet: active todos los correos electrónicos de pedidos del cliente @ WooCommerce Admin
Mientras se registra como administrador y en el tablero de WordPress, agregue el parámetro «envidia«Con valor = el correo electrónico de facturación de un cliente, presione la entrada y el fragmento a continuación se activará.
Ejemplo: test.com/wp-admin/post.php?post=232480&action=Edit&cust-email=info@businessbloomer.com
/** * @snippet Re-Send All Customer's Completed Emails * @how-to businessbloomer.com/woocommerce-customization * @author Rodolfo Melogli, Business Bloomer * @compatible WooCommerce 7 * @community https://businessbloomer.com/club/ */ add_action( 'admin_init', 'bbloomer_trigger_customer_order_emails_admin' ); function bbloomer_trigger_customer_order_emails_admin() { if ( isset( $_REQUEST['cust-email'] ) && ! empty( $_REQUEST['cust-email'] ) ) { if ( ! current_user_can( 'manage_woocommerce' ) ) { wp_die( 'You do not have permission to bulk edit products' ); } $email = sanitize_email( $_REQUEST['cust-email'] ); if ( is_email( $email ) && email_exists( $email ) ) { global $wpdb; $result = $wpdb->get_col( $wpdb->prepare( "SELECT p.ID FROM {$wpdb->posts} AS p INNER JOIN {$wpdb->postmeta} AS pm ON p.ID = pm.post_id WHERE p.post_status = 'wc-completed' AND pm.meta_key = '_billing_email' AND pm.meta_value = %s", $email )); $result = array_map( 'absint', $result ); if ( $result ) { foreach ( $result as $order_id ) { $order = wc_get_order( $order_id ); WC()->mailer()->emails['WC_Email_Customer_Completed_Order']->trigger( $order_id, $order ); } } } } }