LucusHost, el mejor hosting

Cómo agregar una casilla de verificación al formulario de registro de WordPress

Publicado el 18 de mayo de 2022
Actualizado el 17 de julio de 2022

Si tu sitio web necesita cumplir con el RGPD de la Unión Europea, también el formulario de registro de WordPress debe estar adaptado a ello.

El formulario de registro de WordPress, por defecto, no incluye un campo para la aceptación de la política de privacidad y el consentimiento del uso de los datos personales necesarios del usuario registrado.

Afortunadamente, es relativamente fácil agregar una casilla de verificación en el formulario de registro predeterminado de WordPress.

Adaptar el formulario de registro de WordPress al RGPD

Primero creamos la casilla de verificación usando la acción register_form (reemplaza PAGE_ID_PRIVACIDAD con la ID de tu página de privacidad y las cadenas TU-TEXT-DOMAIN con el dominio de texto de tu plugin o tema):

function jrb_registro_politica_privacidad_checkbox() {

	$politica_privacidad_text = esc_html__( 'Política de Privacidad', 'TU-TEXT-DOMAIN' );
	$politica_privacidad_url = esc_url( get_permalink( PAGE_ID_PRIVACIDAD ) );
	$politica_privacidad_link_html = sprintf ( '<a href="%s" target="_blank">%s</a>', $politica_privacidad_url, $politica_privacidad_text );

	$text = sprintf( esc_html__( 'He leído y acepto la %1$s.', 'TU_TEXT_DOMAIN' ), $politica_privacidad_link_html );

	$field = <<<EOT
		<label for="aceptacion_politica_privacidad">
			<input type="checkbox" name="aceptacion_politica_privacidad" class="checkbox" required />
			${text}
		</label>
		<br><br>
EOT;

	echo $field;
}

add_action( 'register_form', 'jrb_registro_politica_privacidad_checkbox', 1, 10 );Lenguaje del código: PHP (php)

Después agregamos la verificación de validación a través del filtro registration_errors (recuerda reemplazar las cadenas TU-TEXT-DOMAIN con el dominio de texto de tu plugin o tema):

function jrb_validacion_politica_privacidad( $errors, $sanitized_user_login, $user_email ) {
	if ( ! isset( $_POST['politica_privacidad_terms_of_service'] ) ) {
		$errors->add( 'empty_politica_privacidad_terms', '<strong>' . esc_html__( 'Error', 'TU-TEXT-DOMAIN' ) . '</strong>: ' . esc_html__( 'Por favor, acepta la Política de Privacidad y los Términos y Condiciones.', 'TU-TEXT-DOMAIN' ) );
	}

	return $errors;
}

add_filter( 'registration_errors', 'jrb_validacion_politica_privacidad', 10, 3 );Lenguaje del código: PHP (php)

Con esto ya deberías tener una casilla de verificación de la política de privacidad en el formulario de registro de WordPress.

Si has cambiado el estilo de dicho formulario, adaptándolo al de tu sitio web, puedes adaptarla con CSS, añadiendo una clase al enlace o el código inline, por ejemplo.

Y, si el formulario de registro de WordPress debe incluir algún campo de verificación más, es cuestión de adaptar las funciones a tus necesidades.

¿Dónde pongo este fragmento de código?

Hay varias formas de agregar un snippet a tu instalación de WordPress:

Si necesitas ayuda para ello, no dudes en ponerte en contacto conmigo.

Te recomiendo

Libros que me ayudan

Donde alojo mis sitios web

LucusHost, el mejor hosting

LucusHost, el mejor hosting

Sitio alojado en un servidor verde según The Green Web Foundation

LucusHost, el mejor hosting

Aviso legal | Condiciones de contratación | Política de privacidad | Política de cookies
© 2017-2023 · Jose R. Bernabeu ·
linkedin facebook pinterest youtube rss twitter instagram facebook-blank rss-blank linkedin-blank pinterest youtube twitter instagram