WooCommerce : Upload File in My Account Registration Form.

Code

How to upload profile picture or any file during WooCommerce My Account Registration?

For uploading file from WooCommerce My Account Registration form we need to set form enctype type To multipart/form-data.secondly , we need to add html tags for input type file to upload file. then we need to validate them if the field field is required.Finally after upload file enter media id to user meta.

For uploading files may be image or other files in WooCommerce Registration form. We should follow these steps

  1. Make form enctype type To multipart/form-data
  2. We have to add html of input type file in form
  3. Than we have to validate these fields
  4. Than Finally Upload File and save field to User meta

Step 1 : We have to use ‘woocommerce_register_form_tag’ Hook.

// Add enctype to form to allow file upload
function AddEnctypeCustomRegistrationForms() {
  echo 'enctype="multipart/form-data"';
}
add_action('woocommerce_register_form_tag','AddEnctypeCustomRegistrationForms');

Step 2 : We have to use ‘woocommerce_register_form’ Hook.

// Add file input html to register form
add_action('woocommerce_register_form','AddImageField');
function AddImageField() {   
  ?>    
    <p class="form-row validate-required" id="pro_image" data-priority="">
    <label for="pro_image" class="">Image (JPG, PNG, PDF)<abbr class="required" title="required">*</abbr></label>
    <span class="woocommerce-input-wrapper">
      <input type='file' name='pro_image' accept='image/*,.pdf' required>
    </span>
    </p> 
  <?php       
}

Step 3: We have to use ‘woocommerce_registration_errors’ Hook.

// Validate new fields
function ValidateImageField( $errors, $username, $email ) {
  if ( isset( $_POST['pro_image'] ) && empty( $_POST['pro_image'] ) ) {
    $errors->add('pro_image_error', __( 'Please provide a valid image', 'woocommerce' ) );
  }
  return $errors;
}
add_filter('woocommerce_registration_errors','ValidateImageField',10,3 );

Step 4: We have to use ‘user_register’ Hook.

// Save new field
function SaveImageField( $customer_id ) {
  if ( isset( $_FILES['pro_image'] ) ) {
    require_once( ABSPATH . 'wp-admin/includes/image.php' );
    require_once( ABSPATH . 'wp-admin/includes/file.php' );
    require_once( ABSPATH . 'wp-admin/includes/media.php' );
    $attach_id= media_handle_upload('pro_image', 0 );
    if ( is_wp_error( $attach_id) ) {
      update_user_meta( $customer_id,'pro_image', $_FILES['pro_image'] . ": " . $attach_id->get_error_message() );
    } else {
      update_user_meta( $customer_id,'pro_image', $attach_id);
    }
  }
}
add_action('user_register','SaveImageField',1);
null

Related reading:

Shiv Kumawat

Executive Director & CEO

Shiv Kumawat is the CEO of Eoxys IT Solution LLP, the Jaipur-based IT company he has led since 2009. An AI & IT Solutions Consultant with 16+ years of experience, he works with startups and enterprises to turn ideas into market-ready SaaS platforms, mobile apps and AI-driven solutions. His team has delivered 700+ projects across SaaS, mobile and web apps, automation and AI. He previously served as Chief Technology Officer for a US company.

Latest Posts

AEO vs SEO vs GEO: a search bar above an AI answer panel that cites three web sources

AEO for B2B Companies: Get on ChatGPT Shortlists in 2026

A B2B buyer used to search, open ten tabs and build a shortlist over weeks. Many now ask ChatGPT, Copilot…

Shafeeq Khan
November 11, 2026
Hire an MLOps engineer illustration: a web platform with automated deployment pipelines on an isometric navy platform

Hire an MLOps Engineer: Skills, Salary and Cost in India 2026

Your data scientist built a model that works in a notebook. Three months later it is still not in production,…

Shafeeq Khan
November 10, 2026
AI visibility audit illustration: a rising search visibility chart, an eye symbol and ranked podium blocks

Track ChatGPT Traffic in GA4: AI Search Referrals in 2026

Your sales team says prospects mention ChatGPT on calls, but your analytics shows only a trickle of AI visits. Both…

Shafeeq Khan
November 9, 2026
,

Leave a Reply

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