Descripción
Validation Muse te permite escribir tus propias reglas de validación y mensajes de error para cada campo de Contact Form 7 — directamente en el editor del formulario, por formulario y por campo. Sin código, sin página global de ajustes, sin trucos en JavaScript.
La mayoría de plugins de validación de CF7 dejaron de funcionar cuando Contact Form 7 6.x introdujo Schema-based Validation (SWV). Validation Muse ejecuta sus filtros con prioridad 20 (después del core de CF7) y usa Reflection para reemplazar el texto de error de SWV en campos ya invalidados — así tu copia personalizada aparece realmente, incluso con el nuevo motor de validación.
Por qué Validation Muse
- Compatible con CF7 6.x SWV — funciona con el nuevo motor Schema-based Validation, no solo con los hooks legacy.
- Reglas personalizadas de regex y longitud — define patrones de expresión regular, longitud mínima y máxima por campo, cada una con su propio mensaje de error.
- Reglas condicionales «Required-If» — haz que los campos sean obligatorios solo cuando un campo compañero esté completado/marcado.
- Integración SWV del lado del cliente — las reglas de validación estándar (required, email, length) se inyectan en el motor SWV nativo de CF7 para feedback instantáneo en el frontend con soporte completo de accesibilidad (A11y).
- Import/export y plantillas de conjuntos de reglas — exporta/importa reglas de validación como JSON, cópialas de otros formularios, y aplica plantillas globales en bloque.
- Tokens de marcador de posición — usa
{field_label},{min}y{max}en los mensajes de validación para generar textos dinámicos. - Por formulario, por campo — cada formulario guarda sus propios mensajes; sin sobrescritura global.
- Almacenado en post meta — los mensajes viven con el formulario, compatibles con la duplicación de formularios de CF7 y con plugins de import/export de terceros.
- Multilingual via WPML, Polylang & Flavor — translates rules using standard WPML/Polylang hooks, and features language tabs + one-click AI Translate when Flavor is active.
- Amigable para desarrolladores — los hooks de extensibilidad
vmcf7_loadedyvmcf7_validation_tag_typespermiten añadir tipos de campo personalizados. - Lightweight — no admin bloat, no tracking, no upsells.
Supported field types
- Mensajes de campo obligatorio: cualquier tag required (
text,textarea,select,checkbox,radio,file, etc.). - Mensajes de formato inválido:
email,url,tel,number(incluyendorange),dateytime. - Mensajes de error personalizados en fallos de validación:
file(comprobaciones de tamaño/tipo),acceptance(estado no aceptado) yquiz(respuesta incorrecta). - HTML inside messages is allowed and sanitized through
wp_kses_post(). - Custom Regex and Min/Max Length rules support all input fields (excluding acceptance and quiz).
Traducciones
El plugin incluye un archivo .pot y ya está traducido al alemán, español, francés, portugués (Brasil), ruso y ucraniano. Ayuda a traducirlo a tu idioma.
Capturas




Instalación
- Instálalo desde Plugins Añadir nuevo buscando Validation Muse for Contact Form 7, o sube la carpeta
validation-muse-for-contact-form-7a/wp-content/plugins/. - Activa el plugin. Contact Form 7 debe estar ya activo — Validation Muse se desactivará automáticamente con un aviso si CF7 falta.
- Edita cualquier formulario de Contact Form 7, abre el panel Custom Validation, actívalo y escribe tus mensajes.
- (Opcional) Instala el plugin de traducción Flavor para traducir mensajes por idioma con asistencia de AI.
FAQ
-
¿Funciona con Contact Form 7 6.x y Schema-based Validation (SWV)?
-
Sí. Desde la versión 1.3.0, Validation Muse engancha con prioridad 20 (después del core de CF7) y usa Reflection para reemplazar el texto de error de SWV en campos ya invalidados. Desde la 1.6.1, las reglas estándar (required, email/url/tel/number/date/time, longitud mín/máx) también se inyectan directamente en el propio esquema SWV de CF7, así que la validación del lado del cliente (JS del frontend) muestra tus mensajes personalizados al instante — a través del motor de validación nativo de CF7, sin ningún script adicional de este plugin.
-
¿En qué se diferencia de otros plugins de validación CF7?
-
Validation Muse es el único plugin de validación CF7 que (1) es compatible con CF7 6.x SWV de fábrica — tanto del lado del servidor como en la propia validación del lado del cliente de CF7, (2) almacena los mensajes en el post meta del formulario para que vivan con él (compatible con la duplicación de formularios CF7 y plugins import/export), y (3) se integra con el plugin Flavor para mensajes por idioma con traducción AI de un click.
-
¿Puedo traducir los mensajes de validación por idioma?
-
Sí — instala el plugin Flavor y Validation Muse mostrará pestañas de idioma en el editor del formulario más un botón AI Translate. Las traducciones se almacenan en la base de datos de Flavor; desinstalar Validation Muse las limpia.
-
Which field types support custom invalid or validation failure messages?
-
email,url,tel,number(incluyendorange),dateytimesoportan mensajes de formato inválido personalizados.filesupports custom file size/type validation error messages.acceptancesupports custom error messages when the checkbox is not accepted.quizsupports custom error messages when the answer is incorrect.- Cualquier campo obligatorio de cualquier tipo puede tener un mensaje de obligatoriedad personalizado.
-
¿Dónde se almacenan los mensajes?
-
En el post meta de cada formulario. Viven con el formulario, así que duplicar un formulario (función nativa de CF7) mantiene los mensajes. CF7 no tiene export nativo, pero los plugins de import/export de terceros leen el post meta — así que las migraciones entre sitios funcionan sin un paso de import separado.
-
¿Puedo usar HTML en los mensajes de validación?
-
Sí, HTML básico está permitido y se sanitiza vía
wp_kses_post(). -
¿Este plugin requiere Contact Form 7?
-
Sí. CF7 debe estar instalado y activo. El plugin muestra un aviso admin y se autodesactiva si CF7 falta.
-
¿Hay una página de ajustes?
-
No. La configuración vive dentro de cada formulario, en el panel Custom Validation. No hay página global de ajustes por diseño — cada formulario guarda sus propios mensajes.
-
Does the plugin track or send any data?
-
No. Validation Muse no hace ninguna petición externa. El botón opcional AI Translate (integración con Flavor) se enruta a través del proveedor configurado en Flavor.
Reseñas
No hay valoraciones para este plugin.
Colaboradores y desarrolladores
«Validation Muse for Contact Form 7» es un software de código abierto. Las siguientes personas han colaborado con este plugin.
Colaboradores«Validation Muse for Contact Form 7» está traducido en 5 idiomas. Gracias a los traductores por sus contribuciones.
Traduce «Validation Muse for Contact Form 7» a tu idioma.
¿Interesado en el desarrollo?
Revisa el código , echa un vistazo al repositorio SVN o suscríbete al registro de desarrollo por RSS.
Registro de cambios
1.6.3
- i18n: se regeneró por completo la plantilla de traducción
.pot— el catálogo estaba congelado desde la 1.2.0 y cubría solo cerca del 20% de las cadenas traducibles del plugin (las reglas de regex/longitud, las plantillas de reglas, los errores de AI Translate y más nunca eran extraíbles antes). Los seis idiomas incluidos (alemán, español, francés, portugués, ruso y ucraniano) ahora están completamente traducidos frente a la interfaz actual. - Documentación: se sincronizaron todos los readme traducidos — la lista de funciones, los tipos de campo soportados y las FAQ ahora reflejan la funcionalidad de la 1.6.0–1.6.2 (reglas personalizadas de regex/longitud, required-if, validación nativa del lado del cliente vía SWV, plantillas de reglas); sus secciones de Changelog/Upgrade Notice, antes estancadas en la 1.4.2, ahora cubren todas las versiones hasta la 1.6.2.
- Fix: se añadió un comentario
translators:que faltaba para una cadena con marcador de posición (calidad de código i18n, sin cambios de comportamiento).
1.6.2
- Fix: messages saved by versions prior to the plugin rename (stored under the legacy
_cf7cv_meta prefix) were invisible to the current code. A one-time migration now renames them to the_vmcf7_prefix automatically, restoring lost messages. Collision-safe and runs once.
1.6.1
- Fix: duplicate/overwritten validation messages on frontend by integrating with CF7’s native SWV engine.
- Fix: admin panel drawers and preview cards rendered expanded due to CF7 editor panel stripping inline styles.
1.6.0
- Nuevo: reglas de validación personalizadas de regex y longitud mín/máx por campo, cada una con su propio mensaje.
- Nuevo: mensajes de validación para campos
file,acceptanceyquiz; mensajes condicionales «required-if». - Nuevo: tokens de marcador de posición
{field_label},{min},{max}en los mensajes. - Nuevo: validación en línea del lado del cliente que refleja los mensajes del servidor, con accesibilidad
aria-describedby. - Nuevo: vista previa en vivo de mensajes, copiar mensajes entre formularios, import/export JSON de conjuntos de mensajes, y linting del editor.
- Nuevo: registro de cadenas WPML/Polylang junto con la integración Flavor; import/export de traducciones.
1.5.0
- PHP mínimo elevado a 8.0; WordPress mínimo elevado a 6.0; probado hasta WordPress 7.0.
- Nuevo: mensajes de validación personalizados para campos
time. - Clearer AI Translate error feedback in the form editor.
- El reemplazo de mensajes SWV basado en Reflection ahora registra fallos bajo WP_DEBUG para un diagnóstico más fácil.
- Mejor manejo de traducciones pendientes (sin fallback silencioso) con caché por petición.
- Código modernizado a idiomas de PHP 8; escapado de salida reforzado; primera suite de tests añadida.
1.4.2
- Plugin URI: ahora apunta a la landing page dedicada en https://plugins.symonov.com/validation-muse-for-cf7/
- Sin cambios de código ni de comportamiento
1.4.1
- Readme: reescritura USP-first para visibilidad SEO
- Tags: reemplazadas las genéricas
messages/forms/customizationporcontact-form-7,cf7,validation,error-message,multilingual - FAQ: añadidas entradas sobre compatibilidad con CF7 6.x SWV, comparación con otros plugins de validación CF7, multilingüismo vía Flavor
1.4.0
- Added multilingual support via Flavor translation plugin integration
- Los mensajes de validación ahora se pueden traducir por idioma en el editor del formulario
- Las pestañas de idioma aparecen automáticamente cuando Flavor está activo
- Botón AI Translate para traducción automática de un click de todos los mensajes
- Traducciones almacenadas en la base de datos de Flavor — los datos del plugin permanecen portables
- Cero overhead cuando Flavor no está instalado — todas las llamadas detrás de class_exists()
- Las traducciones de Flavor se limpian al desinstalar el plugin
1.3.0
- Corregida la compatibilidad con Contact Form 7 6.x SWV (Schema-based Validation)
- Los filtros de validación ahora se ejecutan con prioridad 20 (después del core de CF7) para reemplazar los mensajes de error SWV
- Añadido reemplazo de errores basado en Reflection para campos ya invalidados
- Los mensajes personalizados ahora sobrescriben correctamente el texto predeterminado «The field is required.» de CF7
1.2.1
- Corregida la discrepancia de nombre de variable que causaba el error «No required fields»
1.2.0
- Refactorizada la base de código para seguir los WordPress Coding Standards
- Reorganizada la estructura de archivos para mejor mantenibilidad
- Añadidos bloques PHPDoc a todas las funciones y métodos
- Mejorada la accesibilidad con etiquetas ARIA
- Corregida la inconsistencia de prefijos en JavaScript
- Corregido el script de desinstalación para usar el prefijo meta correcto
- Added extensibility hooks (
vmcf7_loaded,vmcf7_validation_tag_types) - Cambiada la comprobación de capacidad de
manage_optionsawpcf7_edit_contact_forms - Actualizado el nombre del archivo POT para coincidir con el dominio de texto
1.1.2
- Cambiado el nombre del plugin.
1.1.1
- Añadido archivo .gitignore.
1.1.0
- Añadido material del repositorio de WordPress (readme, licencia, archivo POT).
- Rediseñados los hooks de validación para sobrescribir los mensajes required e invalid sin depender de filtros AJAX.
- Reforzada la sanitización, la carga del dominio de texto y la limpieza de desinstalación para preparar el lanzamiento.
1.0.1
- Iteración pública inicial incluida en el proyecto.
