Oferta SiteGround Black Friday

Cómo guardar la aceptación de términos y condiciones en WooCommerce

Si quieres cumplir al máximo las regulaciones de privacidad, como el RGPD por ejemplo, no está de más asegurarte de que guardas registro de si los clientes de tu tienda en línea, creada con WooCommerce, han aceptado los términos y condiciones de tu comercio electrónico, por si hubiese reclamaciones posteriores.

El siguiente código consigue esto por partida doble, pues:

  1. Almacena la aceptación de los términos y condiciones en la base de datos, en los datos meta de cada pedido.
  2. Muestra en los detalles administrativos del pedido si el cliente aceptó los términos y condiciones.
/* Guardar y mostrar aceptación de términos y condiciones */
// 1. Guardamos la aceptación en los datos meta del pedido
add_action( 'woocommerce_checkout_update_order_meta', 'ayudawp_guardar_aceptacion_tos' );
function ayudawp_guardar_aceptacion_tos( $order_id ) {
if ( $_POST['terms'] ) update_post_meta( $order_id, 'terms', esc_attr( $_POST['terms'] ) );
}
// 2. Mostramos la aceptación en la edición del pedido
add_action( 'woocommerce_admin_order_data_after_billing_address', 'ayudawp_mostrar_aceptacion_tos' );
function ayudawp_mostrar_aceptacion_tos( $order ) {
if ( get_post_meta( $order->get_id(), 'terms', true ) == 'on' ) {
echo '<p><strong>Terminos y condiciones: </strong>Aceptados</p>';
} else echo '<p><strong>Terminos y condiciones: </strong>N/D</p>';
}

Este código debes añadirlo a tu plugin o archivo de funciones, como explico en esta sencilla guía…

Cómo y dónde pegar en WordPress códigos PHP, JS, CSS y funciones que encuentres por ahí

Una vez hayas implementado el código en tu instalación la aceptación de los términos y condiciones se guardará con los datos meta del pedido y se mostrará en la gestión del pedido.

¿De cuánta utilidad te ha parecido este contenido?

¡Haz clic en los emoticonos para valorarlo!

Promedio de puntuación 4.9 / 5. Total de votos: 10

Hasta ahora ¡no hay votos!. Sé el primero en valorar este contenido.

Ya que has encontrado útil este contenido...

¡Sígueme en los medios sociales!

¡Siento que este contenido no te haya sido útil!

¡Ayúdame a mejorar este contenido!

Por favor, dime, ¿cómo puedo mejorarlo?

¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!

Sobre el autor

1 comentario en “Cómo guardar la aceptación de términos y condiciones en WooCommerce”

  1. Hola Fernando, te agradezco inmensamente y así quiero que quede constancia y que la gente lo lea para manifestar mi agradecimiento por el gran servicio que voluntariamente y sin afán económico ofreces.
    Dicho lo cual te cuento la duda que me esta surgiendo, intento crear otro check en la ventana de finalizar el pago en check out y guardar el valor como haces tu en el ejemplo para que quede constancia que admite que le envíe la factura electronica, pero no me aparece y me sale undefined.
    te muestro mi código,
    Un abrazo.

    function anadir_factura_checkout() {
    woocommerce_form_field( 'factura_condiciones', array(
        'type'      => 'checkbox',
        'required'  => true,
        'label'     => __('He leído y acepto la  clausula. de recibir la factura de forma electronica'),
    )); 
    }
     
    add_action( 'woocommerce_review_order_before_submit', 'anadir_factura_checkout', 9 );
     
    	/* Guardar y mostrar aceptación de FACTURA E */
    // 1. Guardamos la aceptación en los datos meta del pedido
    add_action( 'woocommerce_checkout_update_order_meta', 'ayudawp_guardar_aceptacion_FE' );
    function ayudawp_guardar_aceptacion_FE( $order_id ) {
    if ( $_POST['factura_condiciones'] ) update_post_meta( $order_id, 'factura_condiciones', esc_attr( $_POST['factura_condiciones'] ) );
    }
    // 2. Mostramos la aceptación en la edición del pedido
    add_action( 'woocommerce_admin_order_data_after_billing_address', 'ayudawp_mostrar_aceptacion_FE' );
    function ayudawp_mostrar_aceptacion_FE( $order ) {
    if ( get_post_meta( $order->get_id(), 'factura_condiciones', true ) == 'on' ) {
    echo 'Factura e: Aceptados';
    } else echo 'Factura e: N/D';
    }

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Información base sobre privacidad:
- Responsable: Fernando Tellado ([email protected])
- Fin del tratamiento: Moderación de comentarios para evitar spam
- Legitimación: Tu consentimiento
- Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal
- Derechos: Acceso, rectificación, portabilidad, olvido

 

Ir arriba