Created
December 27, 2017 06:50
-
-
Save Roshanb54/5435e13627dbc8e6c75fe252b16f6ede to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| add_action( 'woocommerce_register_form_start', 'prefix_add_name_woo_account_registration' ); | |
| function prefix_add_name_woo_account_registration() { | |
| ?> | |
| <p class="form-row form-row-first"> | |
| <label for="reg_billing_first_name"><?php _e( 'First name', 'woocommerce' ); ?> <span class="required">*</span></label> | |
| <input type="text" class="input-text" name="billing_first_name" id="reg_billing_first_name" value="<?php if ( ! empty( $_POST['billing_first_name'] ) ) esc_attr_e( $_POST['billing_first_name'] ); ?>" /> | |
| </p> | |
| <p class="form-row form-row-last"> | |
| <label for="reg_billing_last_name"><?php _e( 'Last name', 'woocommerce' ); ?> <span class="required">*</span></label> | |
| <input type="text" class="input-text" name="billing_last_name" id="reg_billing_last_name" value="<?php if ( ! empty( $_POST['billing_last_name'] ) ) esc_attr_e( $_POST['billing_last_name'] ); ?>" /> | |
| </p> | |
| <div class="clear"></div> | |
| <?php | |
| } | |
| /////////////////////////////// | |
| // 2. VALIDATE FIELDS | |
| add_filter( 'woocommerce_registration_errors', 'prefix_validate_name_fields', 10, 3 ); | |
| function prefix_validate_name_fields( $errors, $username, $email ) { | |
| if ( isset( $_POST['billing_first_name'] ) && empty( $_POST['billing_first_name'] ) ) { | |
| $errors->add( 'billing_first_name_error', __( '<strong>Error</strong>: First name is required!', 'woocommerce' ) ); | |
| } | |
| if ( isset( $_POST['billing_last_name'] ) && empty( $_POST['billing_last_name'] ) ) { | |
| $errors->add( 'billing_last_name_error', __( '<strong>Error</strong>: Last name is required!.', 'woocommerce' ) ); | |
| } | |
| return $errors; | |
| } | |
| /////////////////////////////// | |
| // 3. SAVE FIELDS | |
| add_action( 'woocommerce_created_customer', 'prefix_save_name_fields' ); | |
| function prefix_save_name_fields( $customer_id ) { | |
| if ( isset( $_POST['billing_first_name'] ) ) { | |
| update_user_meta( $customer_id, 'billing_first_name', sanitize_text_field( $_POST['billing_first_name'] ) ); | |
| } | |
| if ( isset( $_POST['billing_last_name'] ) ) { | |
| update_user_meta( $customer_id, 'billing_last_name', sanitize_text_field( $_POST['billing_last_name'] ) ); | |
| } | |
| } | |
| // Add the code below to your theme's functions.php file to add a confirm password field on the register form under My Accounts. | |
| add_filter('woocommerce_registration_errors', 'registration_errors_validation', 10,3); | |
| function registration_errors_validation($reg_errors, $sanitized_user_login, $user_email) { | |
| global $woocommerce; | |
| extract( $_POST ); | |
| if ( strcmp( $password, $password2 ) !== 0 ) { | |
| return new WP_Error( 'registration-error', __( 'Passwords do not match.', 'woocommerce' ) ); | |
| } | |
| return $reg_errors; | |
| } | |
| add_action( 'woocommerce_register_form', 'prefix_register_form_password_repeat',5 ); | |
| function prefix_register_form_password_repeat() { | |
| ?> | |
| <p class="form-row form-row-wide"> | |
| <label for="reg_password2"><?php _e( 'Confirm Password', 'woocommerce' ); ?> <span class="required">*</span></label> | |
| <input type="password" class="input-text" name="password2" id="reg_password2" value="<?php if ( ! empty( $_POST['password2'] ) ) echo esc_attr( $_POST['password2'] ); ?>" /> | |
| </p> | |
| <?php | |
| } | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment