Evaluación inicial sin contraseñas Presupuesto antes de intervenir Especialista responsable de principio a fin

Comportamiento Formulario Wordpress

Un formulario WordPress pierde los archivos adjuntos

Rastrea adjuntos ausentes mediante límites del navegador y PHP, archivos temporales, mail-tags, tamaño SMTP y entrega segura.

Un adjunto atraviesa más etapas que un campo normal: el navegador lo sube, PHP crea un archivo temporal, el formulario lo valida y mueve, la notificación lo referencia y los sistemas de correo aplican límites de tamaño y tipo.

Primero determina si desapareció antes de guardar la entrada o únicamente del email entregado.

Utiliza un archivo de prueba seguro

Crea un documento pequeño e inocuo con nombre único y sin datos personales. Registra tamaño exacto, extensión, hora, ID del formulario y destinatario previsto.

No pruebes ejecutables, documentos confidenciales ni extensiones disfrazadas. Si se admiten imágenes de teléfonos, repite después con un formato realista permitido cuando la ruta básica funcione.

Mantén abierta la página hasta recibir una respuesta auténtica del servidor.

Confirma que el navegador transmitió el archivo

Inspecciona la petición en las herramientas del navegador. Comprueba que usa la carga multipart prevista y que incluye el campo, sin compartir el contenido binario.

Un error JavaScript, el selector móvil o un límite del cliente puede impedir la subida antes de llegar a WordPress. Ver el nombre en pantalla no demuestra que se transmitieran los bytes.

Prueba sin sesión, desde un móvil real si procede y sin extensiones que alteren peticiones.

Compara los límites de PHP y formulario

upload_max_filesize y post_max_size deben admitir la petición completa, no solo el fichero. El servidor web, proxy, plan de Cloudflare o ModSecurity pueden imponer otro límite.

Revisa tamaño máximo y extensiones del propio plugin. Un fichero más pequeño permite distinguir un límite de tamaño de un fallo general.

Amplía los límites únicamente hasta el requisito comercial documentado; aceptar cargas enormes aumenta recursos y riesgo de abuso.

Comprueba el almacenamiento temporal

PHP necesita un directorio temporal escribible y espacio libre. Busca códigos de upload, permisos y discos llenos en los logs PHP y del servidor a la hora exacta.

El hardening o una tarea de limpieza puede borrar el archivo antes de que una notificación asíncrona lo lea. Documenta su ciclo de vida y no hagas público o escribible para todos el directorio como atajo.

Si el plugin conserva ficheros, verifica permisos y retención sin exponer URL predecibles.

Relaciona el campo con la acción de correo

Muchos plugins exigen añadir explícitamente el campo o mail-tag a la configuración de adjuntos. Si se renombró, puede quedar una referencia antigua mientras los campos de texto siguen funcionando.

Compara el ID exacto con la notificación. Revisa las rutas condicionales por separado, porque una de ellas podría omitir el adjunto.

No pongas una ruta del sistema de archivos en el cuerpo del email como sustituto.

Rastrea tamaño y política del proveedor

Localiza el mensaje en los logs de WordPress y del proveedor. La codificación base64 aumenta el tamaño, por lo que un archivo por debajo del límite anunciado puede superar el máximo del mensaje completo.

Conserva cualquier código de rechazo. El gateway destinatario puede bloquear archivos comprimidos, macros, documentos protegidos o ciertos tipos MIME incluso después de la aceptación inicial.

Nunca intentes eludir el filtro cambiando la extensión de un fichero prohibido.

Prefiere enlaces seguros para archivos sensibles

Los adjuntos generan copias en servidores y buzones. Para documentos de identidad, multimedia grande u otras cargas sensibles, utiliza almacenamiento con acceso controlado, enlaces caducables, autenticación y una política de retención explícita.

No guardes uploads en un directorio público enumerable. Confirma que las URL no se puedan adivinar y que al borrar una entrada se eliminen sus ficheros cuando la política lo requiera.

Documenta quién puede acceder y durante cuánto tiempo.

Verifica carga, almacenamiento y entrega

Tras reparar el traspaso, sube otro archivo pequeño. Confirma transmisión, validación, almacenamiento, una notificación e integridad final. Descárgalo como destinatario autorizado y compara nombre, tipo y tamaño.

Prueba después el máximo aprobado y un tipo rechazado, mostrando un error claro en vez de un falso éxito. Verifica también limpieza y eliminación.

Pide ayuda urgente si las cargas contienen datos sensibles, desaparecen de las entradas o provocan rechazo del correo. Comparte códigos, tamaños y nombres sintéticos; nunca archivos de clientes o credenciales.

ANTES DE ENVIAR LA SOLICITUD

Preguntas frecuentes.

¿Pedís contraseñas en el formulario?+

No. El formulario público nunca solicita accesos. Los datos seguros se piden únicamente después de aprobar el alcance y el presupuesto.

¿Quién revisa la incidencia?+

La solicitud llega a Jordi Ensenyat, fundador de Code Barcelona y especialista WordPress con más de 15 años de experiencia.

¿Se cambia algo antes del presupuesto?+

No. Primero se revisan los síntomas visibles y se define el alcance. La intervención empieza tras la aprobación y con una vía de vuelta preparada.

¿Trabajáis con webs en inglés y fuera de España?+

Sí. WP Repair atiende incidencias WordPress y WooCommerce en inglés y español, con servicio remoto.

Evaluar mi incidencia