dfomnibus-woo — Conformidad Directiva Omnibus WooCommerce
Instalación, motor de cálculo del precio de referencia, captura automática, ajustes, panel de defensa, planificador de congelación, importación y resolución de problemas del plugin dfomnibus-woo.
El plugin DataFirefly Omnibus Compliance for WooCommerce adapta su tienda a la directiva europea 2019/2161, conocida como directiva Omnibus, aplicable desde el 28 de mayo de 2022. Captura el historial de precios desde su activación, calcula el precio de referencia legal aplicando las reglas que casi nadie implementa y le proporciona el expediente que deberá entregar en caso de inspección.
Compatibilidad: WordPress 6.2 mínimo, WooCommerce 8.0 mínimo, PHP 8.0 mínimo (compatible con 8.1, 8.2 y 8.3). Compatibilidad HPOS declarada. Productos simples y variables, multidivisa, WPML y Polylang. Sin dependencias externas y sin CDN.
Instalación
- Descargue el archivo
dfomnibus-woo-1.0.0.zipdesde su área de cliente DataFirefly. - En la administración de WordPress, vaya a Plugins, Añadir nuevo plugin, Subir plugin y actívelo. WooCommerce debe estar activo.
- La captura comienza de inmediato: se crean tres tablas y se programa una primera instantánea en los minutos siguientes a la activación.
- Abra WooCommerce, Omnibus Compliance para configurar la visualización y activar su licencia.
Tres tablas creadas: wp_dfwomni_price_history para los registros de precios, wp_dfwomni_display_log para el registro de menciones servidas y wp_dfwomni_license_cache para la caché de licencia. El prefijo wp_ se sustituye automáticamente por el suyo.
El motor de cálculo
El cálculo del precio de referencia reside en un motor sin dependencias de WordPress, cubierto por pruebas unitarias. Las reglas se evalúan en este orden.
1. Series de reducciones sucesivas
Cuando las promociones se encadenan sin que el producto vuelva a su precio no reducido, la referencia legal sigue siendo el precio aplicado antes de la primera reducción de la serie. Nunca se recalcula en cada nueva promoción. El plugin detecta estos encadenamientos, congela la referencia y lo explica en el backoffice, por ejemplo «referencia congelada desde el 12 de octubre, promociones sucesivas en curso».
Una serie tiene un límite temporal. Más allá de 60 días por defecto, ajustable entre 30 y 120 días, se considera que el precio reducido se ha convertido en el precio normal del producto: vuelve a aplicarse la regla general de 30 días y el informe de conformidad señala una promoción permanente.
2. Caso normal, ventana anclada
El precio de referencia es el más bajo aplicado en el intervalo que va desde 30 días antes del inicio de la reducción hasta el inicio de la reducción. La ventana queda anclada al comienzo de la promoción: no se desliza día tras día mientras la promoción está activa, a diferencia de un mínimo deslizante que acabaría absorbiendo el propio precio promocional.
3. Producto comercializado recientemente
Para un producto en venta desde hace menos de 30 días, la referencia es el precio más bajo desde su puesta a la venta, y la mención mostrada en la tienda indica la duración real de comercialización, como exige la norma.
4. Datos insuficientes
Si el historial capturado no cubre la ventana legal para un producto que no es reciente, no se devuelve ninguna referencia y no se muestra nada. Una referencia que nunca se capturó realmente no debe mostrarse ni reconstruirse a posteriori.
Consecuencia práctica: instale el plugin antes de su temporada promocional, no el mismo día. El historial no se reconstruye de forma retroactiva. Es su prueba y solo puede acumularse con antelación.
Captura automática
Dos mecanismos funcionan en paralelo.
- Instantánea diaria: la tarea
dfwomni_daily_snapshotrecorre el catálogo y registra el estado de los precios. Si la última ejecución supera las 24 horas, se programa automáticamente una recuperación puntualdfwomni_catchup_snapshot. - Captura por evento: se registra cada cambio real de precio, ya proceda del editor de producto, de una edición rápida o masiva, de una importación CSV, de una actualización REST o CRUD, de una herramienta de repricing, o del inicio y fin de las promociones programadas.
Una línea de historial equivale a un cambio de precio real y los duplicados se descartan. Los precios se guardan en bruto con su contexto fiscal y su moneda, nunca el precio ya formateado.
Fiabilizar el cron en una tienda con poco tráfico
WP-Cron solo se ejecuta cuando pasa un visitante. En una tienda poco frecuentada, configure un cron de sistema real:
*/15 * * * * wget -q -O /dev/null "https://su-tienda.com/wp-cron.php?doing_wp_cron"
El panel muestra una advertencia si la última instantánea tiene más de 48 horas.
Ajustes
Pestaña Ajustes de la página WooCommerce, Omnibus Compliance.
- Mostrar la referencia en: solo productos con descuento, que es el mínimo legal, o todos los productos con historial capturado, un modo transparencia reservado a la licencia Pro.
- Posición de la línea: justo debajo del precio, o después del bloque de precio en el resumen del producto. Elija la segunda opción si su tema reescribe el marcado del precio.
- Gráfico de 30 días: ofrece la curva de precios en la ficha de producto, en canvas nativo de unos 3 KB y sin script externo. Función Pro.
- Textos personalizados: dos plantillas, la línea estándar con el marcador
{price}y la línea de producto reciente con{price}y{days}. Déjelas vacías para usar los textos traducidos incluidos en francés, inglés, alemán, español e italiano. Función Pro. - Exclusiones: identificadores de productos y categorías que nunca muestran la mención, útil para precios negociados o B2B.
- Umbrales de auditoría: número de días a partir del cual una promoción se marca como permanente, 60 por defecto, y antigüedad máxima de una serie de reducciones sucesivas, 60 por defecto.
- Al desinstalar: casilla para eliminar también el historial capturado. Desmarcada por defecto, de forma deliberada.
Panel de control
La pestaña Panel reúne tres bloques.
Salud de la captura
Número de registros capturados, número de productos monitorizados y fecha de la última instantánea diaria, con la alerta mencionada antes si el cron deja de ejecutarse.
Informe de conformidad
Auditoría calculada en directo sobre sus datos más recientes, que enumera los productos cuya visualización actual podría ser cuestionada en una inspección. Cuatro estados:
- Referencia ausente: el producto está en promoción sin referencia capturada, el descuento se muestra sin un precio anterior defendible.
- Promoción permanente: la promoción lleva demasiado tiempo activa, el precio reducido se ha convertido en el precio normal y el descuento anunciado resulta cuestionable.
- Producto reciente: informativo, la visualización indica correctamente la duración real de comercialización.
- Referencia congelada (serie): promociones sucesivas en curso, la referencia no se recalculará hasta que el producto vuelva a un precio no reducido.
Exportaciones con marca de tiempo
Dos exportaciones CSV generadas en flujo, con el dominio y la marca temporal UTC en el nombre:
- Historial de precios: todos los registros capturados.
- Registro de visualización: qué referencia se sirvió realmente, cuándo y en qué ficha de producto.
El informe de conformidad, las exportaciones y el registro de visualización forman parte de la licencia Pro. La captura nunca se limita.
Historial de precios
La pestaña Historial de precios muestra los registros producto por producto, con la variación, la moneda, el precio regular, el precio promocional, el precio efectivo y el origen del registro. Cuando una referencia está congelada, se indican la fecha y el motivo del congelamiento.
Planificador de congelación
Su primera promoción bloquea la referencia de la siguiente: cualquier precio aplicado en los 30 días previos a una fecha clave reduce el descuento que podrá anunciar ese día. El planificador razona hacia atrás.
Elija una fecha comercial de la lista incluida (Black Friday, Cyber Monday, Navidad, rebajas de invierno y verano, San Valentín, Día de la Madre y del Padre) o introduzca una fecha personalizada. El planificador le indica la fecha límite en la que su última promoción debe terminar para preservar el descuento previsto, y el periodo durante el cual cada precio aplicado alimenta la ventana legal. Un calendario suscribible reúne todos los vencimientos. Función Pro.
Importación de un historial existente
Si otra extensión ya registró sus precios, esos datos son irreemplazables. La pestaña Importación analiza la estructura de las tablas de su base de datos, sin basarse en el nombre de la extensión, y localiza las que contienen un identificador de producto, un precio y una fecha, con detección opcional de una columna de variación. Las tablas de sistema de WooCommerce y de Action Scheduler se omiten.
La tabla muestra cada candidata, las columnas detectadas y el número de filas. La importación es idempotente: los duplicados y las filas inutilizables se cuentan por separado y nunca contaminan su historial. Función Pro.
Licencia
La pestaña Licencia muestra el plan actual, la clave enmascarada y la fecha de la última verificación. Introduzca la clave recibida por correo tras la compra, con el formato DFWOM-PRO-XXXX-XXXX-XXXX-XXXX, y pulse Activar.
Compra única, 12 meses de actualizaciones, reembolso en 30 días, código fuente sin cifrar y una tienda por licencia. Si el servidor de licencias no está accesible, el plugin conserva todas sus funciones durante 7 días y luego vuelve al nivel Free, sin romper nunca su tienda. La captura del historial no se detiene jamás, sea cual sea el plan.
Qué desbloquea la licencia Pro
- Visualización en todos los productos con historial capturado, y no solo en los productos con descuento
- Textos de mención personalizados
- Gráfico de precios de 30 días
- Panel de defensa, informe de conformidad y registro de visualización
- Exportaciones CSV con marca de tiempo
- Planificador de congelación
- Importación de un historial existente
Siempre activos, sea cual sea la licencia: la captura completa del historial, la mención en los productos con descuento y la consulta del historial en el backoffice.
Resolución de problemas
No aparece ninguna mención
Compruebe en este orden:
- ¿El producto está realmente en promoción? Por defecto la mención solo aparece en productos rebajados.
- ¿El historial capturado cubre la ventana requerida? En una instalación reciente la respuesta suele ser no, y es el comportamiento previsto.
- ¿El producto o su categoría figuran en las exclusiones?
- ¿El panel señala una instantánea demasiado antigua? Si es así, fiabilice el cron.
La mención aparece en un lugar inesperado
Cambie la posición a después del bloque de precio en el resumen del producto. Algunos temas reescriben el marcado del precio y absorben la inserción hecha justo debajo.
La última instantánea tiene más de 48 horas
WP-Cron depende del tráfico. Configure el cron de sistema indicado arriba, o compruebe que la constante DISABLE_WP_CRON no está activada sin un cron de sistema que la sustituya.
El gráfico no aparece
El gráfico forma parte de la licencia Pro y debe activarse en los ajustes. Compruebe también que el historial del producto contiene suficientes puntos en los últimos 30 días.
La importación no detecta ninguna tabla
La detección es estructural: una tabla candidata debe contener una columna de identificador de producto, una columna de precio decimal y una columna de fecha. Las tablas nativas de WooCommerce y de Action Scheduler se descartan a propósito.
Preguntas frecuentes
¿Se recalcula la referencia en cada nueva promoción?
No, y es el punto peor comprendido de la regla. Mientras el producto no vuelva a un precio no reducido, la referencia sigue siendo el precio aplicado antes de la primera reducción de la serie.
¿Se admiten los productos variables?
Sí. La referencia se calcula por variación y no a nivel del producto padre, y la mención se actualiza cuando el visitante cambia de variación.
¿Qué ocurre al desinstalar?
Se eliminan los ajustes, la caché de licencia y su tabla. El historial de precios y el registro de visualización se conservan por defecto, ya que esos datos no pueden reconstruirse. Marque explícitamente la opción de purga en los ajustes si desea borrarlo todo.
¿El plugin ralentiza la tienda?
No. La captura escribe una línea pequeña por cada cambio real de precio, la visualización lee un rango indexado corto con caché, y el gráfico son unos 3 KB de código nativo sin ninguna petición externa.
¿Se gestiona la multidivisa?
Sí. Cada registro lleva su moneda, por lo que el historial nunca se convierte a posteriori.
Changelog
1.0.0 – 10 de agosto de 2026
- Versión inicial
- Doble captura: instantánea diaria con recuperación y captura por evento de los cambios de precio
- Precio de referencia sobre una ventana de 30 días anclada al inicio de la reducción
- Regla de las reducciones sucesivas con congelación de la referencia en el precio previo a la serie
- Mención adaptada a los productos comercializados recientemente, con la duración real de comercialización
- Planificador de congelación y calendario de vencimientos
- Panel de defensa, informe de conformidad, exportaciones con marca de tiempo y registro de visualización
- Importación estructural de un historial de precios existente
- Referencia por variación, registros multidivisa
- Traducciones FR, EN, DE, ES, IT, compatibilidad WPML y Polylang, compatibilidad HPOS