Aceptar la Política de privacidad en los comentarios de nuestra web
En este artículo vamos a ver un código para crear una casilla para aceptar la Política de privacidad en los comentarios, una opción de obligado cumplimiento para todas aquellas personas que tienen una web (con al menos un formulario), dentro de la Unión Europea.
Qué es el RGPD
El RGPD o Reglamento General de Protección de Datos, es una normativa europea que obliga, a todos los estados miembros, a regular un nuevo marco para el control sobre los datos que los usuarios de los servicios digitales e internet, ceden a las empresas.
Esta es una cuestión muy importante que nos afecta a todos los que de alguna u otra forma, tenemos algo que ver con internet, las páginas web y los servicios digitales.
Si tienes una web o un blog, este reglamento puede afectar directamente a tu bolsillo, ya que el incumplimiento del mismo puede acarrear sanciones nada despreciables.
Como comentábamos anteriormente la LOPD GDD no determina la cuantía de las sanciones, sino una vez más nos remite al RGPD, impidiendo llevar a cabo ninguna determinación.El importe de las sanciones del RPGD es el siguiente:
Infracciones muy graves: se sancionarán con multas administrativas que pueden alcanzar los veinte millones de euros o, tratándose de una empresa, de una cuantía equivalente al 4% de la facturación.
Infracciones graves: se sancionarán con multas administrativas que puedan ascender hasta los diez millones de euros o, si se trata de una empresa, una cuantía máxima del 2 % de la facturación.
Si quieres ver más información acerca del RGPD, puedes visitar la página para España: RGPD.es.
Casilla para aceptar la Política de privacidad en los comentarios
Ahora que ya he captado tu atención 🙂 vamos a ver cómo podemos crear una casilla con un vínculo hacia nuestra Política de privacidad, que debe estar desactivada, y que el usuario debe activar para poder realizar comentarios en nuestra web.
Te aviso que el código que vamos a utilizar es bastante extenso, así que si lo vas a utilizar, cópialo con cuidado, sin dejarte nada. Pero vamos por partes: ¿qué es lo primero que tenemos que crear?, lógicamente será la propia casilla de verificación. El código para crearla es el siguiente:
/* Casilla para aceptar la política de privacidad */
add_filter( 'comment_form_field_comment', 'casilla_politica_privacidad' );
function casilla_politica_privacidad( $comment_field ) {
return $comment_field.'<p class="privacy"><input type="checkbox" name="privacy" value="privacy-key" class="privacyBox" aria-req="true"> Acepto la <a target="blank" href="https://blog.josegonzalezbueno.com/politica-de-privacidad/">Política de privacidad</a><p>';
}
Con este código, como hemos dicho, creamos la casilla para aceptar la Política de privacidad en los comentarios, pero no te olvides de cambiar mi url hacia la url de tu página de política de privacidad.
Segundo paso: crear un mensaje de error por si el usuario no activa esta casilla para aceptar la Política de privacidad en los comentarios
Por lo general, el usuario aceptará los términos de esta política de privacidad. Pero ¿qué ocurrirá si no los acepta?. Pues en este caso, le saldrá una página automática creada por WordPress, en la que se le avisa que para poder comentar, debe aceptar esa Política de privacidad.
El código para hacerlo es el siguiente:
/* Mensaje de error por si el usuario no se acepta la Política de privacidad */
add_filter( 'preprocess_comment', 'verify_comment_privacy' );
function verify_comment_privacy( $commentdata ) {
if ( ! isset( $_POST['privacy'] ) )
wp_die( __( 'Error: Debes aceptar nuestra política de privacidad activando la casilla que hay en el formulario de los comentarios.' ) );
return $commentdata;
}
Como ves, el mensaje es muy sencillo y muy directo.

Guardar esta información
Ya sea que el usuario activa la casilla de verificación o decide no activarla, esta información debe almacenarse. En el caso de que la active, para dar de paso el envío del formulario, y si no la activa, para que se le muestre el mensaje de error.
Esta información se guardará como información meta de los comentarios.
El código que vamos a utilizar es el siguiente:
/* Se guarda la información de este campo como un comment meta */
add_action( 'comment_post', 'save_comment_privacy' );
function save_comment_privacy( $comment_id ) {
add_comment_meta( $comment_id, 'privacy', $_POST[ 'privacy' ] );
}
Primera capa de información
A continuación viene el texto de la «primera capa» de información que daremos a los usuarios. Esta información debe consistir en quienes somos nosotros, para qué utilizaremos los datos recabados en el formulario de comentarios, a quien se comunicarán dichos datos y qué derechos tiene nuestro usuario con respecto a esos datos.
El código que necesitaremos para realizar esta acción, puede ser parecido a este:
/* Primera capa de privacidad en los comentarios */
add_action( 'comment_form', 'wpse_93795_comment_form' );
function wpse_93795_comment_form( $post_id ) {
printf( '<span class="submit-comment-note">%s</span>',
( '<p>Responsable: Jose González Bueno; Finalidad: Moderación y publicación de comentarios; Destinatarios: No se comunican datos a terceros, salvo por imperativo legal; Derechos: Tienes derecho a acceder, rectificar, exportar y suprimir tus datos; Contacto: jose@blog.josegonzalezbueno.com; Tienes más información en <a href="https://blog.josegonzalezbueno.com/politica-de-privacidad/">la política de privacidad</a></p>', 'your_text_domain' ) );
}
Como siempre, tienes que cambiar el responsable, el email de contacto y la url de la política de privacidad por tus datos.
Código final que tienes que utilizar
Como te he dicho antes, aunque sea un poco engorroso, el código final que debes utilizar es la suma de todos los fragmentos que hemos visto anteriormente:
/* Casilla para aceptar la política de privacidad */
add_filter( 'comment_form_field_comment', 'casilla_politica_privacidad' );
function casilla_politica_privacidad( $comment_field ) {
return $comment_field.'<p class="privacy"><input type="checkbox" name="privacy" value="privacy-key" class="privacyBox" aria-req="true"> Acepto la <a target="blank" href="https://blog.josegonzalezbueno.com/politica-de-privacidad/">Política de privacidad</a><p>';
}
/* Mensaje de error por si el usuario no se acepta la Política de privacidad */
add_filter( 'preprocess_comment', 'verify_comment_privacy' );
function verify_comment_privacy( $commentdata ) {
if ( ! isset( $_POST['privacy'] ) )
wp_die( __( 'Error: Debes aceptar nuestra política de privacidad activando la casilla que hay en el formulario de los comentarios.' ) );
return $commentdata;
}
/* Se guarda la información de este campo como un comment meta */
add_action( 'comment_post', 'save_comment_privacy' );
function save_comment_privacy( $comment_id ) {
add_comment_meta( $comment_id, 'privacy', $_POST[ 'privacy' ] );
}
/* Primera capa de privacidad en los comentarios */
add_action( 'comment_form', 'wpse_93795_comment_form' );
function wpse_93795_comment_form( $post_id ) {
printf( '<span class="submit-comment-note">%s</span>',
( '<p>Responsable: Jose González Bueno; Finalidad: Moderación y publicación de comentarios; Destinatarios: No se comunican datos a terceros, salvo por imperativo legal; Derechos: Tienes derecho a acceder, rectificar, exportar y suprimir tus datos; Contacto: jose@blog.josegonzalezbueno.com; Tienes más información en <a href="https://blog.josegonzalezbueno.com/politica-de-privacidad/">la política de privacidad</a></p>', 'your_text_domain' ) );
}
En mi caso he cambiado un poco este texto, pero la idea es que el usuario tenga una casilla de verificación para aceptar la Política de privacidad en los comentarios. Además, se deben mostrar los datos obligatorios del propietario de la web y los derechos de cancelación, modificación, rectificación y supresión de los datos personales, ya que el usuario debe saber en todo momento cuales son sus derechos a la hora de publicar comentarios en nuestra web.

Espero que no te haya resultado difícil crear una casilla para aceptar la Política de privacidad en los comentarios.
Si tú lo tienes hecho de otra forma, puedes hacérmelo saber y compartirlo con todos a través de los comentarios.
[whatsapp]
¿Qué te ha parecido el artículo?. Házmelo saber en los comentarios que tienes más abajo. Estoy deseando leerte. Por último, si crees que este artículo puede ser interesante para algún amigo tuyo, te agradecería enormemente que lo compartieras con él y con todo el mundo a través de las Redes Sociales.
2 comentarios
Muchas gracias! Me ha funcionado perfecto! Me estaba costando mucho añadir esta casilla. No sé si sabrías ayudarme… quizás es una tontería, pero tienes idea de cómo podría cambiar el color de la casilla? Con css? Sabes cuál? No sigue los colores de mi sitio… estoy empezando y ni idea! jejeje
Muchas gracias!
Hola Victoria, gracias por pasarte por el blog y leer los artículos.
Respecto a tu pregunta, lo que tienes que hacer es: sitúate sobre la casilla de verificación y con el botón derecho elige la opción Inspeccionar, esto te dará la clase de esa casilla.
Si no me equivoco, la clase para esta casilla es privacyBox, sabiendo esto, puedes crear estilos para esta clase, algo parecido a esto:
.privacyBox {
border-radius: 2px;
background-color: #fff;
border: 2px solid #c1c1c1;
}
Lógicamente debes cambiar estos valores y adaptarlos a los colores de tu sitio web. En este caso, la casilla tendrá un radio de esquina de 2px (para que no sea completamente cuadrada), el color de fondo será blanco y el borde será casi negro, con una línea completa de 2px de grosor.
Espero haberte ayudado con tu problema, cualquier otra duda que tengas, házmelo saber.
Muchas gracias de nuevo por visitar el blog y comentar los artículos, te invito a que veas más publicaciones y que comentes aquellas que desees 😉
Un saludo.