// Добавление чекбокса
add_action( 'woocommerce_review_order_before_submit', 'truemisha_privacy_checkbox', 25 );
function truemisha_privacy_checkbox() {
woocommerce_form_field( 'privacy_policy_checkbox', array(
'type' => 'checkbox',
'class' => array( 'form-row' ),
'label_class' => array( 'woocommerce-form__label-for-checkbox' ),
'input_class' => array( 'woocommerce-form__input-checkbox' ),
'required' => true,
'label' => 'Принимаю <a href="' . get_privacy_policy_url() . '">Политику конфиденциальности</a>',
));
}
// Валидация
add_action( 'woocommerce_checkout_process', 'truemisha_privacy_checkbox_error', 25 );
function truemisha_privacy_checkbox_error() {
if ( empty( $_POST[ 'privacy_policy_checkbox' ] ) ) {
wc_add_notice( 'Ваш нужно принять политику конфиденциальности.', 'error' );
}
}
// Добавление чекбокса
add_action( 'woocommerce_register_form', 'truemisha_registration_privacy_checkbox', 25 );
function truemisha_registration_privacy_checkbox() {
woocommerce_form_field(
'privacy_policy_reg',
array(
'type' => 'checkbox',
'class' => array( 'form-row' ),
'label_class' => array( 'woocommerce-form__label-for-checkbox' ),
'input_class' => array( 'woocommerce-form__input-checkbox' ),
'required' => true,
'label' => 'Принимаю <a href="' . get_privacy_policy_url() . '">Политику конфиденциальности</a>',
)
);
}
// Валидация
add_filter( 'woocommerce_registration_errors', 'truemisha_registration_privacy_checkbox_error', 25 );
function truemisha_registration_privacy_checkbox_error( $errors ) {
if( is_checkout() ) {
return $errors;
}
if ( empty( $_POST[ 'privacy_policy_reg' ] ) ) {
$errors->add( 'privacy_policy_reg_error', 'Ваш нужно принять политику конфиденциальности.' );
}
return $errors;
}