December 30, 2024
1 min read
custom checkbox below the terms and conditions August 24, 2022

To add an additional custom checkbox below the terms and conditions in WooCommerce checkout we can use WooCommerce “woocommerce_checkout_after_terms_and_conditions” hook. Here as an example, we are going to add the “personal data protection and privacy policy” checkbox after the terms and conditions.

It will be something like this..

Add an additional custom checkbox below the terms and conditions in WooCommerce checkout page

Now let’s write some code.

To add an additional custom checkbox below the terms and conditions in Wthe ooCommerce checkout page, Put this code on your functions.php in the child theme.

functions.php
// ===========================
// Custom checkbox
// ===========================
function privacy_checkbox_to_woocommerce_checkout() {
    ?>
    <p class="form-row validate-required">
        <label class="woocommerce-form__label woocommerce-form__label-for-checkbox checkbox">
            <input type="checkbox" class="woocommerce-form__input woocommerce-form__input-checkbox input-checkbox" name="privacy_checkbox">
            <span class="woocommerce-terms-and-conditions-checkbox-text">I have read and agree to <a 
 href="/privacy-policy/" class="woocommerce-privacy-link" target="_blank">personal data protection and privacy policy.</a></span> <span class="required">*</span>
        </label>
    </p>
<?php
}
add_action('woocommerce_checkout_after_terms_and_conditions', 'privacy_checkbox_to_woocommerce_checkout' );

Now your custom checkbox is visible on the WooCommerce Checkout page. We are not done yet. if you place an order now you can do without the checkbox checked !!!

So we need to put an error notice if the checkbox is not checked. something like this

Checkbox not checked Notice

Now put this code below of previous code to achieve this notice

funtions.php

// ====================================
// Notice if checkbox is not checked
// =====================================
function privacy_checkbox_checkout_field_process() {
    // Check if set, if its not set add an error.
    if ( ! $_POST['privacy_checkbox'] ){
        wc_add_notice( __( 'Please read and accept the personal data protection and privacy policy to proceed with your order.' ), 'error' );
	}
}
add_action('woocommerce_checkout_process', 'privacy_checkbox_checkout_field_process');

That’s all. You are done. $_POST[‘privacy_checkbox’] privacy_checkbox is the name of our custom checkbox.

Thank you.

Leave a Reply

Your email address will not be published. Required fields are marked *

Random slide order in slick sider

Change slick carousel slide order randomly

HTML img tag to HTML SVG tag [WordPress]

Image to SVG for WordPress. Generate svg code from image file

Enabling Guest Checkout in WooCommerce: Bypassing Email Verification for Order Payment

Enable guest payment, bypass email verification. Enhance user experience, boost conversions. Easy, efficient, and customer-friendly solution

WordPress category or taxonomy list

WordPress custom taxonomy term list with function and loop. show taxonomy team on wp query loop

Web Development Project in mind?

if you looking for a web developer for paid contribution to your project I am available for work.

Mukto
Mukto

Click the button below to chat with me.