The WooCommerce variable product helps to create multiple variations of a single product. This will save time and effort of store owners from creating each variation from scratch. To create variable products, you have to make use of product attributes.
You can conveniently import or export variable products using our Product Import Export Plugin for WooCommerce plugin. It imports all the details into your WooCommerce store without hassles. An important step here is to map the column header of the CSV file correctly with the fields of WooCommerce so that all product variations and attributes come up without any problems.
Note: The CSV Import file must be in UTF-8 format. For more information about UTF-8 encoding, See How to save CSV / Excel File as UTF-8 Encoded?
Let us now understand importing CSV file containing variable products.
Let’s consider we have a variable product ‘T-shirt’ with four variations. The variations are created with two attributes – Color (Blue & Red) and Size (L & XL). The four variations are represented by their SKUs as A11v1 (Blue-XL), A11V2 (Red-XL), A11V3 (Blue-L) and A11v4 (Red-L), as shown in the screenshot below.
In the CSV file, make sure that you use both SKU and Parent_SKU in the CSV for a variation. The child products should always have a Parent_SKU.
- meta:attribute_size – This defines the values of the variations.
- attribute:size – This defines all the possible values for the parent product.
- attribute_data:size – This column is explained below
- attribute_default:size – It is the default size that will be displayed on the cart/checkout page.
The field meta is to be filled, only for the child products. The other three fields – attribute, attribute_data, and attribute_default is filled, only for parent products. Also, the field attribute_default can be left empty and is not mandatory to be filled.
Now, let us take a look at the column attribute_data. attribute_data value is displayed in the form of position | visible | variation.
- position: Defines the position of the attribute in the front-end. For example, if you have 3 attributes and the value of the position is 0, it indicates that this attribute’s position is at the top of the variations list.
- visible: If the attribute is visible at the front-end, the value will be displayed as 1. Else, 0.
- variation: If the attribute is used for variation, the value will be displayed as 1. Else, 0.
Finally, please see the sample CSV and only provide data in parent products rows for fields like attribute:size and attribute_data:size. The variations should not have any value for these columns.
Note: Click Sample CSV of Variable Product to download it.
Following are the steps to import variable products:
- Move to Import Products in CSV Format in the Import section of Product settings tab. Further settings appear as shown in the screenshot below.
- You can choose either of the methods for uploading the CSV file. In this article, we are selecting the first method. That is, uploading a CSV file from your computer.
- Click Choose File to browse a required CSV file from your computer.
- Select a mapping file, or click Upload file and import to move ahead and create a new one.
- Enter a mapping filename and map the required WooCommerce Product Fields with column headers of the CSV file. Use Evaluation Field to fix/update the required value for a particular field.
- Click Submit to start importing products into your WooCommerce store.
Based on the CSV file imported, the products and its attributes get added to your store, as shown in the screenshot below:
Once the import is successful, you can view the imported products in the WooCommerce Product page section.
To view its variations, move to the Variations section in the respective product page.
The variations in the product page will be displayed as shown below:
From the above screenshots, we can see the variable product – T-shirt is imported to the WooCommerce store with four variations (Blue-L, Red-L, Blue-XL, Red-XL). The variations are imported with the correct images, SKU name, regular price, attributes, and so on.
For more information on importing and exporting of products, read this documentation.