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
Section titled “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
Section titled “Configuración”Vaya a WooCommerce > Ajustes > Polski > Pago y configure la sección “Casillas legales”.
Casillas predeterminadas
Section titled “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
Section titled “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
Section titled “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
Section titled “Validación”Validación del lado del servidor
Section titled “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
Section titled “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:
WooCommerce > Ajustes > Polski > Pago > Validación JS de casillas
Mensajes de error
Section titled “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
Section titled “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
Section titled “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
Section titled “Gestión programática de las casillas”Añadir una casilla programáticamente
Section titled “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
Section titled “Eliminar una casilla”add_filter('polski/checkout/legal_checkboxes', function (array $checkboxes): array { unset($checkboxes['marketing_consent']);
return $checkboxes;});Modificar una casilla existente
Section titled “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
Section titled “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
Section titled “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
Section titled “Compatibilidad con Block Checkout”El plugin admite casillas tanto en el pago clásico como en Block Checkout. Para Block Checkout, las casillas utilizan el bloque woocommerce/checkout-terms-block.
Problemas frecuentes
Section titled “Problemas frecuentes”Las casillas no se muestran
Section titled “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
Section titled “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
Section titled “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.