Genera un plugin de formulario multi-paso para WordPress
Los formularios largos matan la conversión. La solución habitual es el formulario multi-paso: dos o tres campos cada vez, avanzas con barra de progreso y solo pides lo difícil cuando el visitante ya está metido.
Los plugins que ofrecen esto (Gravity Forms con addon de pago, WPForms Pro, Formidable) son sólidos pero cuestan anuales y la lógica queda encerrada en su builder. Si quieres un flujo de pasos afinado a tu embudo — incluyendo guardar-y-reanudar por magic link — un plugin pequeño a medida es más limpio.
¿Por qué generarlo en vez de instalar un plugin existente?
Gravity Forms Conversational son 199€/año sobre Gravity, WPForms Pro arranca en 199€ y renueva más caro. Esos precios están bien si usas todo; si solo necesitas tres pasos con una rama condicional, parece un impuesto.
Un plugin generado renderiza los pasos con JS mínimo, postea a admin-ajax o a la REST API, valida cada paso server-side y guarda envíos parciales por UUID en cookie. Controlas el markup, así el estilo encaja con tu tema sin pelear con el CSS del builder.
Dónde más gana: guardar-y-reanudar. En el paso 2 pides email; si el visitante cierra la pestaña, un cron 30 min después le manda un enlace de reanudación con un click. Esa feature sola suele recuperar 10-20% de drop-offs, y los plugins off-the-shelf no la ofrecen o la meten en tier alto.
Prompt de ejemplo
Este es el tipo de descripción que genera este plugin. Puedes partir de aquí y ajustar lo que necesites antes de generar.
Nombre del plugin: Acme Onboarding Form
Tres pasos:
- Paso 1: nombre completo, email (requeridos).
- Paso 2: empresa, tamaño equipo (1-5, 6-20, 21-100, 100+), caso de uso (textarea).
- Paso 3: rango presupuesto (radio), fecha inicio (date picker), aceptar términos.
Barra de progreso arriba con porcentaje y labels.
Botones Next/Previous. Next deshabilitado hasta validación.
Validación server-side por paso vía /wp-json/acme/v1/form/step POST.
Guardar-y-reanudar:
- Tras paso 1 con email, guardar parcial en wp_options clave UUID en cookie.
- WP Cron cada 30 min: si parcial tiene 30-60 min y no completado, email con link https://site.com/onboarding?resume=<uuid>.
- Al reanudar, precargar del parcial.
Submit final: guardar en tabla wp_acme_submissions, email admin, redirect a /gracias.
Anti-bot: honeypot + reCAPTCHA v3 en paso final (site key en ajustes).Qué suele incluir el plugin generado
- Shortcode [acme_form] que renderiza todo el flujo
- Vanilla JS (sin jQuery) manejando transiciones entre pasos
- Endpoints REST por paso con nonce + validación por paso
- Tabla propia para envíos completos, opción para parciales
- Email de reanudación via WP Cron con URL firmada (UUID + HMAC)
- Página admin con envíos y export CSV
- Honeypot + reCAPTCHA v3 opcional al final
Pasos, campos, lógica de ramificación, copia de email y ventana de reanudación se definen en el prompt. Si quieres Stripe al final, descríbelo y el plugin incluye el paso de pago.
Preguntas frecuentes
¿Funciona sin JavaScript?
Degrada a formulario de una página renderizado server-side. El dato llega, pero pierdes la animación entre pasos.
¿Pueden los pasos ser condicionales?
Sí. Describe la regla ("si equipo > 20, saltar paso 3") y la lógica vive en PHP, así el visitante no la puede puentear tocando el cliente.
¿Cómo se limpian los parciales?
Cron diario borra parciales de más de 14 días salvo que elijas otra retención. Buena política GDPR.