Legal checkboxes
Antes de realizar un pedido, el cliente debe aceptar los términos y condiciones y la política de privacidad. Polski for WooCommerce añade casillas legales con contenido configurable, validación y mensajes de error.
Requisitos legales
Sección titulada «Requisitos legales»La tienda debe obtener el consentimiento explícito del cliente para:
- los términos y condiciones de la tienda (condiciones del contrato de venta)
- la política de privacidad (tratamiento de datos personales)
- el derecho de desistimiento del contrato (información sobre el plazo de 14 días)
Los consentimientos deben otorgarse de forma activa (la casilla no debe estar marcada de forma predeterminada) y por separado para cada finalidad.
Configuración
Sección titulada «Configuración»Vaya a Polski > Ajustes > Pago y pedidos y configure la sección “Casillas legales”.
Casillas predeterminadas
Sección titulada «Casillas predeterminadas»El plugin añade las siguientes casillas:
| Casilla | Obligatoria | Contenido predeterminado |
|---|---|---|
| Términos y condiciones | Sí | He leído los [términos y condiciones] y acepto sus disposiciones. |
| Política de privacidad | Sí | He leído la [política de privacidad] y consiento el tratamiento de mis datos personales. |
| Derecho de desistimiento | Sí | He sido informado sobre el derecho de desistimiento del contrato en un plazo de 14 días. |
| Consentimiento de marketing | No | Consiento la recepción de información comercial por medios electrónicos. |
Añadir una casilla personalizada
Sección titulada «Añadir una casilla personalizada»En el panel de configuración, haga clic en Añadir casilla y complete el formulario:
| Campo | Descripción |
|---|---|
| Nombre | Identificador interno (p. ej. newsletter_consent) |
| Etiqueta | Texto mostrado junto a la casilla |
| Obligatoria | Si la casilla debe marcarse para realizar un pedido |
| Posición | Orden de visualización (número) |
| Descripción | Texto adicional debajo de la casilla (opcional) |
| Mensaje de error | Texto mostrado cuando una casilla obligatoria no está marcada |
Formato de las etiquetas
Sección titulada «Formato de las etiquetas»En el contenido de la etiqueta puede usar:
[regulamin]- enlace automático a la página de términos y condiciones[polityka-prywatnosci]- enlace automático a la política de privacidad[odstapienie]- enlace a la página sobre el derecho de desistimiento<a href="URL">texto</a>- enlace personalizado<strong>texto</strong>- negrita
Las páginas de términos y condiciones y de política de privacidad se obtienen de los ajustes de WooCommerce (WooCommerce > Ajustes > Avanzado > Configuración de páginas).
Validación
Sección titulada «Validación»Validación del lado del servidor
Sección titulada «Validación del lado del servidor»El plugin valida las casillas en el lado del servidor mediante el hook woocommerce_checkout_process. Si una casilla obligatoria no está marcada, el pedido no se realizará y el cliente verá un mensaje de error.
Validación del lado del cliente
Sección titulada «Validación del lado del cliente»Una validación opcional de JavaScript muestra un mensaje de error inmediatamente después de hacer clic en el botón de pedido, sin recargar la página. Actívela en los ajustes:
Polski > Ajustes > Pago y pedidos > Validación JS de casillas
Mensajes de error
Sección titulada «Mensajes de error»Cada casilla tiene un mensaje de error configurable. Mensajes predeterminados:
| Casilla | Mensaje de error |
|---|---|
| Términos y condiciones | Para realizar un pedido, debe aceptar los términos y condiciones de la tienda. |
| Política de privacidad | Para realizar un pedido, debe aceptar la política de privacidad. |
| Derecho de desistimiento | Debe confirmar que ha leído la información sobre el derecho de desistimiento. |
Almacenamiento de los consentimientos
Sección titulada «Almacenamiento de los consentimientos»El plugin guarda la información de los consentimientos:
- como metadatos del pedido (
_polski_consent_*) - con la fecha y hora del consentimiento
- con la versión de los términos y condiciones/política de privacidad (si el seguimiento de versiones está activado)
Esta información es visible en la vista del pedido y puede exportarse a petición (RGPD).
Ver los consentimientos en un pedido
Sección titulada «Ver los consentimientos en un pedido»En la vista del pedido en el panel de administración, en la sección “Consentimientos legales”, encontrará una lista de los consentimientos otorgados con sus fechas.
Gestión programática de las casillas
Sección titulada «Gestión programática de las casillas»Añadir una casilla programáticamente
Sección titulada «Añadir una casilla programáticamente»add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array { $checkboxes['custom_consent'] = [ 'label' => 'Consiento el tratamiento de datos con fines de gestión de reclamaciones.', 'required' => true, 'position' => 50, 'error_message' => 'Debe consentir el tratamiento de datos.', 'description' => '', ];
return $checkboxes;});Eliminar una casilla
Sección titulada «Eliminar una casilla»add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array { unset($checkboxes['marketing_consent']);
return $checkboxes;});Modificar una casilla existente
Sección titulada «Modificar una casilla existente»add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array { if (isset($checkboxes['terms'])) { $checkboxes['terms']['label'] = 'Acepto los <a href="/terms">términos y condiciones</a> de la tienda.'; }
return $checkboxes;});Visualización condicional de una casilla
Sección titulada «Visualización condicional de una casilla»add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array { $cart_total = WC()->cart->get_total('edit');
if ($cart_total > 500) { $checkboxes['high_value_consent'] = [ 'label' => 'Confirmo el pedido con un valor superior a 500 PLN.', 'required' => true, 'position' => 60, 'error_message' => 'Debe confirmar el pedido de alto valor.', ]; }
return $checkboxes;});Estilos CSS
Sección titulada «Estilos CSS».polski-legal-checkboxes { margin: 1.5em 0; padding: 1em; background: #f9f9f9; border: 1px solid #e0e0e0; border-radius: 4px;}
.polski-legal-checkbox { margin-bottom: 0.8em;}
.polski-legal-checkbox label { font-size: 0.9em; line-height: 1.5; cursor: pointer;}
.polski-legal-checkbox__description { margin-top: 0.3em; font-size: 0.8em; color: #666;}
.polski-legal-checkbox--error label { color: #c00;}Compatibilidad con Block Checkout
Sección titulada «Compatibilidad con Block Checkout»Las casillas funcionan en el pago clásico y en el pago por bloques, con dos límites en el pago por bloques: las etiquetas de términos y privacidad se muestran como texto sin sus enlaces, y las casillas condicionales (renuncia para contenido digital, reglas por categoría, país o pago) no aparecen allí. Las tiendas que dependan de esas casillas deben usar el pago clásico.
Problemas frecuentes
Sección titulada «Problemas frecuentes»Las casillas no se muestran
Sección titulada «Las casillas no se muestran»- Compruebe que el módulo está activado en los ajustes
- Asegúrese de que las páginas de términos y condiciones y de política de privacidad están configuradas en WooCommerce
- Verifique que otro plugin no esté eliminando las casillas
El enlace en la etiqueta no funciona
Sección titulada «El enlace en la etiqueta no funciona»Compruebe que la página de destino está publicada (no es un borrador) y que el atajo (p. ej. [regulamin]) está introducido correctamente.
El pedido se realiza a pesar de una casilla sin marcar
Sección titulada «El pedido se realiza a pesar de una casilla sin marcar»Compruebe que la casilla está marcada como “Obligatoria”. Verifique la consola del navegador en busca de errores de JavaScript que puedan bloquear la validación del lado del cliente.