I’m really trying to dig in and learn more about WooCommerce setup and development. I feel like my PHP skills (although limited to mostly Core and CodeIgniter) could be put to good use with this e-Commerce platform. Plus, one day I want to sell bass fishing tackle, lures, and gear on my Louisiana Bass Nation Anglers niche website. So I better learn how to build, modify, and manage my own WooCommerce shop!
The Newsletter for PHP and MySQL Developers
Receive a copy of my ebook, “10 MySQL Tips For Everyone”, absolutely free when you subscribe to the OpenLampTech newsletter.

Learning, sharing, and documenting
I think it best to go ahead and document my learnings here in the article for my future self (lord knows I’ll need them 😁). Hopefully, others are able to use the content going forward as well.
Example WooCommerce Product With Multiple Variations
For the example in this article, I’ll be using one of my favorite bass fishing lures: the jig.
Jigs are a prime example of products having multiple variations. The main attributes of a jig are:
- Style – Swim, Football, Finesse, Pitching, Archie, etc…
- Weight (in ounces) – 1/4, 3/8, 1/2, 3/4, etc
- Color – Far too many to name.
To keep it simple, I’ll focus on assembling the multiple variations for 2 jig attributes: weight and color.
Similar: A baitcaster reel has a retrieve (right-handed or left-handed) and a gear ratio and is also a good example of a fishing-related product with multiple variations.
Note: I won’t be covering any stock or inventory management for the sample products in this article as I am still (at the time of writing) learning the ins and outs of product inventory.
Adding Attributes To a Product In WooCommerce
To get started, click the Attributes menu item under the main WooCommerce menu and enter the name of each attribute you want to add, clicking the Add Attribute button for each one. In this example, I enter Jig Color and Jig Size (for the weight).
You can see both attributes are now available in the list:
Next, click the Configure terms for the attribute you wish to add value(s) for. In the example below, I add in some of my favorite Jig Colors one by one, clicking the Add new Jig Color button for each color added:
Shown below are the 3 colors I added for the Jig Color attribute:
I repeat the same steps (not shown) for the Jig Size attribute, adding in the weights I want to configure for the various jigs:
Now when you actually add a product (the Jig in this example), be sure and change the Product data – dropdown to Variable product. Then use the Add button to choose an attribute and click the Save attribute button
Choose the Custom product attribute from the dropdown, and click the Add button. Make sure and check the Used for variations checkbox and the Select all button for the Value(s) property (this has all of the individual attribute values), finally clicking the Save attributes button when all is complete.
Again, I repeat the above process for the Jig Size (or weight) attribute
When all values have been chosen for the variations, choose the Create variations from all attributes dropdown and click the Go button.
Note: There will be a (jQuery-like) dialogue popup (not shown) requiring you to confirm the action.
Notice all of the Jig Color/Jig Size combinations have been created in WooCommerce for us:
At this point, you must go through each variation adding in values for any of the many attributes for that particular variation. Below is a quick example of the data for a (sample) Black n Blue 1/2 oz Bass Jig product. I only filled in the Regular price ($) attribute for this example but you can see there are other options you may wish to complete for your needs.
Now on the product page, you can choose from the various combinations of Jig Color and Jig Size attributes:
Closing and additional remarks
Again, to be absolutely transparent, this is one of the first times I have made an honest attempt to create a multi-variation product in WooCommerce. If you see anything wrong in the examples, please share your comments freely in the comments section so that we can all learn and grow from the insights.
Constructive comments help me publish useful and accurate information and are much appreciated.
Thank you for reading this post. Please share it with someone else who would enjoy it as well.
Josh Otwell has a passion to grow as a PHP Developer, SQL expert, and technical blogger/writer.
Disclaimer: The majority of examples in this post, are performed in a personal development/learning workstation environment and should not be considered production quality or ready. Your particular goals and needs may vary. Like always, just because you can do something doesn’t mean you should. My opinions are my own.
More ways I can help
- Any of the Web Squadron Mastery Modules can help you with your online web entrepreneurial endeavor(s).
- Get a handle on Google Analytics with this course by the folks over at The Content Technologist.
- Need hosting for your next web application or WordPress site? I highly recommend Hostinger and use them to host my niche bass fishing site. The service is second to none.
- 🔒5 Truths I’ve Come To Realize As a Self-taught Developer
Disclosure: Some of this blog post’s services and product links are affiliate links. At no additional cost to you, should you make a purchase by clicking through one of them, I will receive a commission.
The Newsletter for PHP and MySQL Developers
Receive a copy of my ebook, “10 MySQL Tips For Everyone”, absolutely free when you subscribe to the OpenLampTech newsletter.
📰 Get your brand, product, or service the attention it deserves with affordable classified ad placement in the OpenLampTech newsletter. I appreciate your support!