Adding a Checkbox for GDPR Compliance
Adding a checkbox can be achieved in three simple steps, or two if you don't need to save the fact that the checkbox was checked.
Add the Checkbox
function add_gdpr_checkbox_to_tml_register_form() { tml_add_form_field( 'register', 'accept_terms', array( 'type' => 'checkbox', 'label' => 'I agree to the <a href="/terms-and-conditions">Terms and Conditions</a>', 'value' => '1', 'checked' => tml_get_request_value( 'accept_terms', 'post' ), 'priority' => 30, ) ); } add_action( 'init', 'add_gdpr_checkbox_to_tml_register_form' );
Validate the Checkbox
function validate_gdpr_checkbox_on_registration( $errors ) { if ( ! tml_get_request_value( 'accept_terms', 'post' ) ) { $errors->add( 'accept_terms', '<strong>ERROR</strong>: You must accept the Terms and Conditions.' ); } return $errors; } add_filter( 'registration_errors', 'validate_gdpr_checkbox_on_registration' );
Save the Checkbox (Optional)
function save_gdpr_checkbox_on_registration( $user_id ) { if ( tml_get_request_value( 'accept_terms', 'post' ) ) { update_user_meta( $user_id, 'accepted_terms', 1 ); } } add_action( 'user_register', 'save_gdpr_checkbox_on_registration' );