Adjuntar archivos (Imágenes, PDF, audio…) en los correos de WooCommerce

LucusHost, el mejor hosting

Si necesitas adjuntar en cada correo que mandas a tus clientes una imagen de branding con un código de descuento, un catálogo de productos en PDF o un vídeo personal dando las gracias… Estas en el post adecuado.

Como siempre os lo enseñaré mediante un plugin o código.

Adjuntar un archivo en un correo en específico

En este caso adjuntaremos en los correos que recibe el cliente de «procesando» y «completado» el archivo que nosotros hemos elegido de «medios».

Como siempre para añadir el código cópialo en el archivo functions.php de tu child theme o bien en tu plugin de funcionalidades Code Snippets como explico aquí.

/* Añadir archivo en correos de procesando y completado  */
add_filter( 'woocommerce_email_attachments', 'dl_adjuntar_en_correos_woocommerce', 10, 4 );
function dl_adjuntar_en_correos_woocommerce( $attachments, $email_id, $order, $email ) {
    $email_ids = array( 'customer_processing_order', 'customer_completed_order' );
    if ( in_array ( $email_id, $email_ids ) ) {
        $upload_dir = wp_upload_dir();
        $attachments[] = $upload_dir['basedir'] . "/2021/07/url-de-ejemplo.pdf"; //IMPORTANTE: Cambia el enlace del archivo por el que quieras adjuntar
    }
    return $attachments;
}

Si lo queréis insertar en otros emails tenéis que cambiar el ID de los mails:

'cancelled_order' //pedido cancelado
'customer_completed_order' //pedido completado
'customer_processing_order' //pedido procesándose
'customer_invoice' //factura del cliente
'customer_new_account' //nueva cuenta de cliente
'customer_note' //notas al cliente
'customer_on_hold_order' //pedido en espera
'customer_refunded_order' //reembolso
'customer_reset_password' //restablecer contraseña
'failed_order' //pedido fallido
'new_order' //nuevo pedido

Adjuntar un archivo si compran un producto/s especifico/s

En el caso que solo queramos adjuntar un archivo en ciertos productos deberemos añadir este código modificando el ID del producto y el archivo:

add_filter( 'woocommerce_email_attachments', 'add_woocommerce_attachments_for_certain_product', 10, 3 );

function add_woocommerce_attachments_for_certain_product ( $attachments, $email_id, $email_order ){
  $product_id = 11871; //Ponemos el ID del producto
  $attachment_id = 99999; //El ID del archivo que queremos adjuntar.

  if( $email_id === 'customer_processing_order' ){
    $order = wc_get_order( $email_order );
    $items = $order->get_items();
  
    foreach ( $items as $item ) {
      if ( $product_id === $item->get_product_id() ) {
        $attachments[] = get_attached_file( $attachment_id );		
      }
    }	 
	
  }
  return $attachments;
}

En este caso es para un mail de estamos procesando tu pedido.

Para más productos:

add_filter( 'woocommerce_email_attachments', 'add_woocommerce_attachments_for_certain_product', 10, 3 );

function add_woocommerce_attachments_for_certain_product ( $attachments, $email_id, $email_order ){
  $product_id = array( 11871, 123, 456 ); // Añadir las IDs de los productos o variaciones
  $attachment_id = 99998; //El ID del archivo que queremos adjuntar.

  if( $email_id === 'customer_completed_order' ){
    $order = wc_get_order( $email_order );
    $items = $order->get_items();
  
    foreach ( $items as $item ) {
      if ( in_array( $item->get_product_id(), $product_id ) ) {
        $attachments[] = get_attached_file( $attachment_id );		
      }
    }	 
	
  }
  return $attachments;
}

En este caso pondríamos con comas todos los productos que necesitamos.

(Queda poner cómo encontrar el ID)

adjuntar pdf emails woocommerce

Plugins recomendados

Si te lías o no entiendes de código y prefieres un plugin te dejo algunos que he probado y funcionan. Incluso la versión PRO puede hacer muchas más cosas de las explicadas.

Ejemplos e ideas que podemos adjuntar

Compartir estos archivos por correo electrónico nos puede servir para los siguientes casos:

  • Guías prácticas de un producto en concreto
  • Videos explicativos de cómo procesamos el pedido o como funciona el envío
  • Vales o Cupones para canjear
  • Imágenes del producto (diferentes vistas)
  • Adjuntar las políticas de reembolso para informar al cliente
  • Programa de procesamiento de pedidos
  • Aviso de retraso con el motivo especificado
  • Confirmación de cancelación

Espero que os haya servido. Cualquier duda como siempre os leo en comentarios.

¡Haz clic para puntuar esta entrada!
(Votos: 1 Promedio: 5)
mailerlite diegol

Especialista en Comercio electrónico con Woocommerce. Te ayudo a crear, gestionar y publicitar tu Ecommerce en función de tu sector y público objetivo. Puedes encontrarme en Diegol.top

¿Necesitas ayuda con este tutorial? Mándame un correo y te resuelvo todas las dudas!


Ver servicios Curso de WooCommerce

También puedes realizar una donacion para seguir apoyando la salida de nuevos tutoriales y actualizaciones

mailerlite diegol

Reader Interactions

comentarios

Deja una respuesta

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