Resumen de IA
La mayoría de las personas que necesitan enviar un correo electrónico con archivos adjuntos en WordPress intentan resolver algo bastante común. Un visitante sube un documento, una foto o un contrato firmado a través de un formulario, y quieres que ese archivo llegue a tu bandeja de entrada.
La buena noticia es que la versión más común de esto no necesita ningún código. Hay tres formas prácticas de adjuntar un archivo a un correo electrónico de WordPress, y la correcta depende de dónde provenga el archivo en primer lugar.
Te guiaré a través de las tres, comenzando con la que la mayoría de la gente realmente quiere. Luego cubriré el problema de entrega que sorprende a casi todos una vez que los archivos adjuntos comienzan a fluir.
Cómo enviar un correo electrónico con archivos adjuntos en WordPress
Puedes adjuntar archivos que tus visitantes cargan a través de un formulario, adjuntar un PDF o CSV generado de la propia entrada, o adjuntar archivos con código desde tu propio plugin o tema. El método del formulario cubre la mayoría de las situaciones reales y tarda unos cinco minutos en configurarse.
- Paso 1: Instalar el plugin básico de WPForms
- Paso 2: Crear un formulario con un campo de carga de archivos
- Paso 3: Adjuntar los archivos cargados a la notificación de tu correo electrónico
- Paso 4: Enviar una entrada de prueba y confirmar que llegó el archivo adjunto
- Otras formas de enviar correos electrónicos con archivos adjuntos en WordPress
- Por qué no llegan tus archivos adjuntos de correo electrónico de WordPress
Paso 1: Instalar el plugin básico de WPForms
WPForms es el creador de formularios que usaré para los dos primeros métodos. Viene con más de 2100 plantillas de formularios de WordPress para empezar, incluyendo una plantilla de formulario de carga de archivos lista para usar que ya tiene el campo de carga en su lugar.
Lo que me gusta de manejar los archivos adjuntos de esta manera es que el campo de carga y la configuración del correo electrónico se encuentran en la misma pantalla. No estás añadiendo un fragmento de código a un plugin de formularios y esperando que ambos se pongan de acuerdo, y puedes cambiar el límite de tamaño de archivo y la notificación en la misma sesión.
Las cargas de archivos y los archivos adjuntos de notificación se desbloquean con una licencia de pago, por lo que necesitarás Pro, que desbloquea más de 40 complementos potentes, lógica condicional y ¡mucho más!


Para empezar, compra la licencia Pro. Luego instala WPForms en tu sitio web. Si necesitas ayuda, sigue estas instrucciones sobre cómo añadir un plugin a WordPress.
¡Consigue WPForms Basic Ahora! :)
Paso 2: Crear un formulario con un campo de carga de archivos
Ahora que tenemos WPForms Pro instalado, podemos sumergirnos para crear un potente formulario de subida de archivos que enviará adjuntos a tu correo electrónico.
Una de las cosas realmente geniales de WPForms es lo fácil que es empezar a crear formularios. Tendrás más de 2100 plantillas de formularios de WordPress para elegir, incluyendo una plantilla de formulario de subida de archivos predefinida.
Para esta guía, simplemente usaremos esta plantilla, pero no olvides que puedes añadir un campo de subida de archivos a cualquier formulario. Así que, para continuar con la creación de nuestro formulario, nos dirigiremos al área de administración de WordPress y haremos clic en WPForms » Añadir Nuevo.


Una vez aquí, buscaremos el formulario de subida de archivos usando la barra de búsqueda. Cuando lo encuentres, haz clic en Usar plantilla, y el formulario se abrirá en el creador de formularios.


Si empiezas desde cero con una plantilla en blanco o cualquier otra plantilla, puedes encontrar el campo de subida de archivos desplazándote por el panel de campos del formulario hasta laCampos Elegantessección.


Arrastra y suelta el campo de subida de archivos en el formulario en el punto donde lo desees.En este punto, tendrás un formulario básico de subida de archivos que puedes mejorar:
- Tamaño máximo de archivo: Déjalo en blanco para usar el límite de tu servidor, o introduce un número menor para limitarlo tú mismo. Pasa el ratón por encima del icono de interrogación para ver lo que tu servidor permite actualmente.
- Número máximo de archivos: Por defecto es 1, que es fácilmente la razón más común por la que solo aparece un archivo en tu bandeja de entrada. Auméntalo si los visitantes necesitan enviar varios a la vez.
- Extensiones de archivo permitidas: WPForms ya acepta documentos, imágenes, audio y vídeo comunes, por lo que solo necesitas este campo cuando quieras restringir más las cosas.
- Estilo: Moderno te da una caja de arrastrar y soltar y admite varios archivos. Clásico muestra un único botón Elegir archivo y no acepta cargas múltiples en absoluto.
- Almacenar archivo en la Biblioteca de Medios de WordPress: Se encuentra en la pestaña Avanzado, déjalo desactivado y las cargas se guardarán en una carpeta de WPForms dentro de tu directorio de cargas en su lugar.
Esa configuración de Estilo confunde a la gente más de lo que cabría esperar. Si aumentas el Número máximo de archivos pero dejas el campo en Clásico, los visitantes aún solo podrán enviar un archivo.
Hay un desglose más completo de cada opción en la guía completa del campo de carga de archivos, y la página de función de cargas de archivos tiene un resumen más breve.
Paso 3: Adjuntar los archivos cargados a la notificación de tu correo electrónico
Desde el constructor de formularios, navegue hasta el menú de la izquierda del panel de campos del formulario y haga clic en Ajustes » Notificaciones. Una vez dentro, primero, asegúrese de que el botón Activar notificaciones esté activado.


Desplácese hacia abajo y haga clic en Avanzado para revelar más opciones, luego active el botón etiquetado Activar archivos adjuntos de carga de archivos del formulario.


A continuación, verá otra sección etiquetada Campos de carga de archivos, que se habrá abierto en un menú desplegable debajo de ella. Haz clic en el menú desplegable para elegir el campo del formulario del que extraer los archivos adjuntos.
En este caso, solo tienes un campo de carga de archivos en tu formulario etiquetado como Carga de archivo. Selecciona este campo y guarda esta configuración.


Si tu formulario tiene más de un campo de carga, esta es la parte en la que vale la pena detenerse. Cada campo debe seleccionarse individualmente en ese menú desplegable.
Seleccionar solo el primero significa que las otras cargas nunca se adjuntan, y nada en la interfaz te advierte sobre ello. Mientras estás en este panel, también verás un interruptor llamado Adjuntar entrada CSV.
Ese adjunta una hoja de cálculo de los datos enviados en lugar de los archivos cargados, y lo cubro un poco más abajo.
La documentación oficial sobre adjuntar archivos a los correos electrónicos de notificación del formulario repasa la misma configuración si desea una segunda referencia, y puede cambiar el aspecto del correo electrónico en sí con estos consejos sobre cómo personalizar las notificaciones del formulario.
Paso 4: Enviar una entrada de prueba y confirmar que llegó el archivo adjunto
Para comprobar que su formulario envía las cargas de archivos a su correo electrónico como debería, necesitaremos incrustarlo en una página y publicar esa página en el frontend de su sitio. Para obtener instrucciones detalladas, consulte nuestra guía sobre cómo incrustar un formulario en una página en WordPress.
Con su formulario publicado en el frontend de su sitio web, proceda a rellenarlo y adjunte un archivo utilizando el campo de carga de archivos.
Y cuando revise su correo electrónico, ahora verá la carga de archivos adjunta al correo electrónico, que puede ver o descargar directamente.


El archivo debería estar ahí como un archivo adjunto genuino que puede abrir o descargar directamente del correo electrónico.
Si la notificación llega pero falta el archivo adjunto, o el correo electrónico no aparece en absoluto, salte a la sección de entrega a continuación, porque casi siempre es un problema de tamaño de archivo en lugar de un problema de configuración.
Otras formas de enviar correos electrónicos con archivos adjuntos en WordPress
Los archivos subidos son solo un tipo de archivo adjunto, y otras dos situaciones surgen con suficiente frecuencia como para que valga la pena cubrirlas.
A veces, lo que desea adjuntar no existe hasta que se envía el formulario, como un recibo o un registro de la propia entrada. Otras veces, envía correos electrónicos desde su propio código sin que intervenga ningún formulario.
Adjuntar una copia en PDF de la entrada
El complemento PDF genera un PDF con estilo a partir de la entrada enviada y lo adjunta a la notificación, por lo que el destinatario recibe un documento adecuado en lugar de una pared de campos del formulario en el cuerpo de un correo electrónico.
Elige una plantilla, ajusta el tema y controla quién puede abrirla, todo lo cual requiere una licencia Pro. La configuración completa se cubre en esta guía sobre cómo enviar un archivo adjunto PDF en un correo electrónico de notificación del formulario.


Adjuntar un CSV de los datos de la entrada
Este es el interruptor Habilitar adjunto CSV de entrada del Paso 3, ubicado en el mismo panel Avanzado en la configuración de su notificación. Actívelo y cada notificación llevará un pequeño CSV de los datos de esa presentación.
Es una característica Básica como las cargas de archivos, por lo que no hay ninguna mejora involucrada, y combina bien con formularios que recopilan muchos campos estructurados. La documentación sobre adjuntar archivos CSV a los correos electrónicos de notificación del formulario tiene los detalles.


Adjuntar archivos con código
WordPress tiene soporte para archivos adjuntos integrado en su función de correo. El quinto parámetro de wp_mail() toma una ruta de archivo, o una matriz de rutas de archivo cuando necesite enviar varias, y deben ser rutas absolutas del servidor en lugar de URL.
wp_mail( $to, $subject, $message, $headers, $attachments );
Esas rutas apuntan a archivos reales en su servidor, lo que significa que el archivo debe guardarse en algún lugar antes de poder adjuntarse.
Si lo que realmente busca es agregar un archivo adicional a una notificación de WPForms mediante programación, nuestra documentación para desarrolladores cubre cómo adjuntar un archivo a las notificaciones por correo electrónico con código sin que tenga que reconstruir la notificación desde cero.
Por qué sus archivos adjuntos de correo electrónico de WordPress no llegan
Esta es la parte que casi nadie planea, y es la razón por la que la mayoría de la gente termina buscando ayuda. Una vez que sus visitantes comiencen a subir archivos reales, algunos de esos correos electrónicos fallarán silenciosamente al llegar.
La causa suele ser el tamaño, y hay dos límites separados involucrados. Su servidor tiene un límite de carga que rige lo que un visitante puede poner en el formulario, y su proveedor de correo electrónico tiene su propio límite sobre cuán grande será un archivo adjunto que transportará.
La solución es trabajar hacia atrás desde su proveedor de correo en lugar de su servidor. Encuentre el límite de archivos adjuntos de su servicio de correo, luego establezca Tamaño máximo de archivo en su campo de carga cómodamente por debajo de él.
Si necesita aumentar lo que los visitantes pueden subir en primer lugar, aquí le mostramos cómo cambiar el tamaño máximo de carga de archivos en WordPress.
Y si las notificaciones no llegan incluso con archivos pequeños adjuntos, el problema está completamente antes de los archivos adjuntos, así que comience con esta guía sobre cómo solucionar fallos en la entrega de correo electrónico en WordPress.
Para archivos genuinamente grandes, la mejor opción es dirigir la carga al almacenamiento en la nube y enviar un enlace en lugar de un archivo adjunto, lo que mantiene sus notificaciones pequeñas y su bandeja de entrada utilizable.
Preguntas frecuentes sobre el envío de correos electrónicos con archivos adjuntos en WordPress
Enviar un correo electrónico con archivos adjuntos en WordPress plantea algunas preguntas recurrentes, especialmente sobre quién recibe el archivo y qué sucede con él después. Aquí están las que los lectores preguntan con más frecuencia.
¿Puedo enviar el archivo adjunto a la persona que envió el formulario?
Sí. Agregue una segunda notificación y apúntela a la dirección de correo electrónico que ingresó su visitante, luego habilite los archivos adjuntos de carga de archivos en esa notificación también.
Cada notificación tiene su propia configuración de archivos adjuntos, por lo que la copia que va a su visitante y la copia que va a su equipo no tienen por qué coincidir. La documentación sobre cómo enviar un correo electrónico de notificación a la persona que envió el formulario cubre cómo configurar el destinatario correctamente.
¿Cómo adjunto el archivo en lugar de solo enlazarlo?
Activar Habilitar archivos adjuntos de carga de archivos adjunta el archivo real, por lo que esa parte ya está resuelta. Lo que confunde a la gente es que el cuerpo del correo electrónico aún puede mostrar una URL de descarga, porque la etiqueta inteligente {all_fields} imprime cada valor enviado, incluido el enlace del archivo. Reemplácelo con las etiquetas inteligentes de campo específicas que desee y la URL desaparecerá mientras el archivo adjunto permanece.
¿Puedo adjuntar más de un archivo a la misma notificación?
Sí, con dos configuraciones para verificar. Aumente Número máximo de archivos por encima de 1 en el campo de carga y establezca el Estilo en Moderno, ya que Clásico no aceptará varios archivos. Si su formulario tiene varios campos de carga separados, recuerde seleccionar cada uno en el menú desplegable Campos de carga de archivos.
¿Los archivos cargados permanecen en mi sitio después de enviar el correo electrónico?
Sí. Adjuntar un archivo a una notificación envía una copia, no mueve el original. Las cargas se almacenan en una carpeta de WPForms dentro de su directorio de subidas por defecto, o en su Biblioteca de Medios si habilitó esa opción en el campo. También permanecen adjuntas a la entrada en su panel de WordPress, por lo que puede descargarlas más tarde sin tener que buscar en el correo electrónico.
¿Puedo enviar un correo electrónico con un archivo adjunto en WordPress sin un plugin de formularios?
Sí, usando la función wp_mail() descrita anteriormente. Pase una ruta de archivo absoluta como quinto parámetro, o una matriz de rutas para varios archivos. Es el enfoque correcto cuando el correo electrónico es activado por su propio código en lugar de por el envío de un formulario, aunque usted mismo escribirá y mantendrá esa lógica.
A continuación, crea tu formulario de carga de archivos
Una vez que los correos electrónicos lleguen correctamente, vale la pena mejorar el propio formulario con restricciones de tipo de archivo, instrucciones más claras para los visitantes y un mensaje de confirmación que les indique que la carga funcionó.
Este tutorial sobre cómo crear un formulario de carga de archivos en WordPress cubre la configuración que más importa. Después de eso, pruebe una vez más con un archivo de tamaño realista en lugar de un pequeño marcador de posición.
Cree su Formulario de Subida de Archivos Ahora
¿Listo para crear tu formulario? Empieza hoy mismo con el plugin de creación de formularios de WordPress más fácil. WPForms Pro incluye muchas plantillas gratuitas y ofrece una garantía de devolución de dinero de 14 días.
Si este artículo te ha sido útil, síguenos en Facebook y Twitter para obtener más tutoriales y guías gratuitas de WordPress.



¿Qué pasa si quieres enviar a la persona que rellena tu formulario un correo electrónico con un archivo adjunto?
Hola Jonathan, puedes configurar una respuesta automática / correo de agradecimiento donde puedes escribir una respuesta en HTML, incluir un archivo adjunto (añadiendo la URL del archivo adjunto) al usuario que completó el formulario. Tenemos un tutorial paso a paso sobre esto (y otros aspectos de la configuración de correos electrónicos de formularios) en este documento.
Espero que esto ayude. Gracias :)
Hola,
¿Cómo puedo hacer que las subidas no sean un enlace y solo un archivo adjunto? Ahora mismo es realmente inseguro porque puedes acceder a los datos a través del enlace…
Hola Hannah: Si no quieres tener la URL de carga del archivo en la notificación por correo electrónico, simplemente usa {field_id="#"} en lugar de {all_fields} en el mensaje de correo electrónico, como se muestra aquí.
Por si acaso ayuda compartirlo, añadimos un hash único al final de la URL del archivo que suben los usuarios (ej: mi-logo-570543445db74.png) para que un usuario malintencionado no pueda abrir fácilmente un montón de archivos que se han subido a tu sitio o no pueda adivinar la URL de otros archivos a menos que obtenga la URL exacta del archivo por correo electrónico.
¡Espero que esto ayude! Gracias 🙂
¿Hay alguna forma de controlar cómo se adjunta o incrusta el archivo? Tengo varios destinatarios configurados y algunos de ellos tienen problemas para imprimir los correos electrónicos con imágenes. Les he sugerido que cambien la configuración de la impresora de sus programas de correo electrónico, pero aún así faltan al imprimirse. Nuestra empresa hace esto para llevar un registro.
Hola Travis: Cuando tengas un momento, por favor, escríbenos con más detalles sobre el problema que estás experimentando en soporte para que podamos ayudarte más.
Si tienes una licencia de WPForms, tienes acceso a nuestro soporte por correo electrónico, así que por favor envía una solicitud de soporte.
De lo contrario, ofrecemos soporte gratuito limitado en el foro de soporte de WPForms Lite en WordPress.org.
Gracias 🙂