WooCommerce – eCommerce for WordPress
WooCommerce is arguably the current leader in WordPress shopping carts. It set off to a quick start because it is a fork of the JigoShop product and even uses some of the same core developers.
This tutorial will introduce you to WooCommerce and get you started with your first WordPress store. We’ll demonstrate simple products, downloadable products, virtual products, grouped products and variable product types. You can use these examples as guidelines to building your own cart selling anything you want.
The first thing you have to do is a little planning before you add the products.
Step #1. Plan Your WooCommerce Shop
Decide what categories you are going to need so you can build the taxonomy that will let people navigate and find your products. For this example, we’re going to have the following categories:
- Books
- Downloads
- Services
- Hosting Plans
- Website Packages
Our store will have all of the basic product types:
- Simple products – A standard, regular product which is tangible and can be shipped.
- Downloadable products – A digital product the user can download. Nothing is shipped.
- Virtual products – Nothing is shipped and nothing is downloaded – this could be a service or a booking.
- Grouped products – Not sellable itself, a grouped product is a collection of related products, for example a dinner set containing multiple simple products.
- Variable products – Not sellable itself, a variable product contains several variations each of which can have different stock levels, sku’s and prices. A good example of this is a t-shirt where the variations could be size and color.
Step #2. Create an Account at WordPress.com
WooCommerce plug-in belongs to Automatic, the same company that develops WordPress CMS. To download the plug-in, sign in to your own account at WordPress.com.
- Once you logged into your newly created account at WordPress.com, you will see the Welcome page:

Step #3. Download WooCommerce Plug-in
Once you logged into WordPress.com, you are now ready to download WooCommerce plug-in.
- Visit woocommerce.com/download.
- You will see the “Authorize WooCommerce.com” page:

- Click the Approve button. You will now see the “Choose Account – WooCommerce” page:

Next, you will be asked a few questions and make a few choices. This is pure a pre-download formality,
- Unless you already have an account at WooCommerce.com, click “I don’t have a WooCommerce.com account”
- Click “Continue”
- At the next page called “Whom is this site for”, select “This site is for me”.
- At the next step, “What industry you are in?”, select an industry and click the “Continue” button underneath the page.
- Then select what types of products your WooCommerce store will be selling an click the “Continue” button underneath.
- Next, select how your customers will pay then click on the “Continue” button.
- At the next page “How would you like to install WooCommerce?”, select “Go DIY – download the plugin”:

- At the next, final page, click the “Download” button to download WooCommerce onto your hard drive:

Step #4. Install the Plug-in
- In your WordPress dashboard go to Plugins > Add New:

- You will see the “Add Plugins” page. Type in woocommerce into the “Keyword” search field:

- You will see the WooCommerce plug-in info. Click the “Install Now” button.

- Once the “Install Now” button changed to the “Activate”, click “Activate”.
Excellent! You just installed e-commerce WooCommerce plugin at your WordPress web site. Next, you will set up some of your WooCommerce store basic settings.
Step #5. Configure Your WooCommerce Basic Settings Using the Setup Wizard

- Click on the “Let’s Go”. You will see the Page Setup page. At this step, the Setup Wizard is ready to create for your store a few essential web pages: Shop, Cart, Checkout and My Account:

- Click “Continue” to create the pages or “Skip this step” to skip them and later create your own WooCommerce pages from scratch. For the purpose of this tutorial, I clicked on “Continue”.
- At the next step, you will be prompted to set your store location related settings: its country, its currency and if you will be charging a tax:

- If you are happy with the default settings, click “Continue”. If you wish to set your store country and currency later, click “Skip this step”. For the purpose of this tutorial, I opt for “Continue”.
- You will now see the “Shipping” page of the Setup Wizard:

- Select, if it is relevant to the profile of your store, the weight and dimension units. Click “Continue”.
- You will see the “Payment” setup page:

- Select one or few online and offline payment options, relevant to your store or, if you wish to set them later, click “Skip this step”. For the purpose of this tutorial, I selected “PayPal” and clicked “Continue”.
- You will now arrive at the “Your store is ready!” page:

- At this point, your store with its basic settings is ready.
- Click the “Allow” button to allow WooCommerce development team to collect non-sensitive diagnostic data to improve the plug-in.
- You can now proceed to creating your first product, or import products from a CSV file or return to your WordPress site dashboard.
Note: you can rerun WooCommerce Setup Wizard at any time.
- In your WordPress dashboard go to WooCommerce
- Click Help in the top right corner:

- You will see the “Orders” page. Click “Setup Wizard” and you are done:

Step #6. Configure the Basic Parameters of the Cart
Once you install the plug-in, you’ll see a new menu for WooCommerce. Click Settings and read and check all configuration options:

You’ll be defining the base currency, tax rates and other basic parameters. The defaults are set for the UK. If you are in a different country be sure to go through all of the tabs and make sure you have everything set for your location.
In this example we’re using the simplest methods for each. You would need to purchase add-ons or get help from WooThemes for more complex tax and shipping setups. The same goes for different payment methods. The default is PayPal, and they are still developing add-ons for other payment methods at this time.
Configure the Tax and Shipping for this example
Before you are able to set up your store taxes, you need to enable them.
- Go to General tab
- Check the “Enable taxes” setting
- Click Save

You will now see the “Taxes” tab has been added to the rest of the tabs:


Click the Tax tab. Set the tax rate for Washington. In the US, taxes are applicable to any shippable product, and they are based on the state of origin, or the state the company headquarters are in. You need to check the tax laws in your state to comply and get the correct rates.
Enable Flat Rate Shipping

Click the Shipping Methods tab and enable the shipping method and set a type, tax status and set the price. We’re using Flat Rate shipping with a Handling Fee.
Step 4. Start adding categories

Go to the Dashboard > WooCommerce > Products > Categories. Click Categories in the Products section on the dashboard.

Just give the category a name and click Add New Product Category if that’s all you need. You can create subcategories if you want and also upload a category image. This may not show on your template. WooCommerce has it’s own set of themes. I am using the default 2011 theme in this example. All of the administrative functions will be the same, but the ultimate display is determined by what theme you are using.

Add all of our sample categories by repeating the step.
Books
Downloads
Services
Hosting Plans
Website Packages
Step 5. Add a Simple Product (or a Virtual Product)

Go to Dashboard > WooCommerce > Products > Add Product
To make this a Simple Product, choose Simple from the Product Type.
Type the information for the product into the edit window as you would for any post. Don’t add the product picture yet. We’ll do that when we choose the featured image. The program uses the featured image for the product detailed information page. If you don’t use a Featured Image, and insert the picture from the editor, you won’t have a picture on the details page.
You can add other pictures and graphics on the rest of the page using the editor.
NOTE: The process for creating a virtual product, like a service, is the same as the simple product, except for needing to track inventory. So we won’t be repeating the steps for that Product Type. By the end of this tutorial you will have plenty of practice adding products.
Step 6. Configure the Product Data

You will see that while this is similar to a regular post, there are special fields that are specific to products. Clicking through the list of tabs will give you access to each setting group.
Step 7. Set the price on the General tab

For our example give it a Regular Price of $34.99 and a Sale Price of $20.99.
Set the duration of the sale, unless it is goes on forever. In that case leave it blank.
The weight and dimensions will be needed to calculate shipping. I’ve got the cart set to Flat Rate shipping, so I don’t need to fill these in right now.
Step 8. Set the tax status

Since this is a tangible item set the Tax Status to Taxable.
Step 9. Set the Inventory parameters

When you check the Manage stock? box you will see the additional fields for Stock status, Stock Qty, and Allow Back orders? Set those as you need them.
This is all we need to do for this simple product. We don’t need attributes, but we will for more complex products. We can’t do up-sells and cross-sells because we don’t have any other products entered.
We do need to finish the entry before we publish.
Step 10. Complete the entry

Choose the category
Add tags as needed
Click Set featured image.

Upload from your computer or choose an image from the correct source. Here I’ve chosen to upload From Computer.
Set the image as a Featured Image

Click Use as featured image. It will say Done as a confirmation. Insert it into the post when it’s done.
Click Insert into Post
You will see this in the editing page.

If the picture has been properly uploaded and set as the Featured Image, you’ll see the image.
Scroll back to the top of the page and Click Publish to publish the post.

I put in two items so you could see results. In the one with the reduced price a “Sale” icon is displayed and the original price and the reduced price.
You’ve completed everything you need to do for adding a simple product. This part of the process is identical for all products, The differences come in Step 5, where you choose the type of product. The following intermediate steps will be different for each type. Rather than repeat all the steps for every setup, I’ll show you how to adjust the intermediate steps for each type of product.
Let’s start with a Downloadable Product.
Step 11. Add a Downloadable product

Go through all the product creation steps, and add a product named OS Downloads, but when you get to Step 5 choose Download from the drop down menu on the Product Type and Visibility panel.
Step 12. Give it a price on the General tab

Scroll down to the Product Data Panel.
Price it at $49.00.
Go to the Tax tab.
Step 13. Set the tax status

Some items don’t need to be taxed. In this case choose None from the selector. We don’t need to charge tax on downloadable items so we don’t need to select this box. Be sure you check your state or country laws regarding taxes.
Step 14. DO NOT check the Manage stock? checkbox

Downloadable products have infinite inventory. Leave it blank or uncheck it if it’s checked.
Step 15. Set the attribute – download link

Click the Attributes Tab
Click Upload a file.
Upload a file suitable for the download. It can be a compressed file, a PDF, an image or anything you want people to pay for before downloading.
If you already know the path to the file, you can type or paste it in the File path: field. You can limit the number of downloads as well. A single customer will only be able to download it X times depending on what you choose.

If you’ve uploaded the file from your computer, you will find it in a Gallery that was created by the shopping cart. This is only a temporary gallery and will disappear after you have finished with the product. It makes it easy to find the pictures you’re currently using. When you’re done, the picture will be added to your Media Library if you need it again you will find it there.

Go to the Gallery tab
Click Insert into URL field
If you go to the gallery and choose the item you can find the complete Link URL if you need to copy it or manually enter it.
Step 15. Create a Cross-sell opportunity

Go to the Cross-sells tab
Search for a product by starting to type the name or a tag
Click the arrow to add it to the right-side panel
A cross-sell opportunity is a product that is somehow related to the product you’re entering and the customer might buy it as well. In this case, we’re offering a Joomla Module, so the same person might be interested in the Joomla book. An Up-sell is similar and is added in the same way. It is used to entice the customer to buy a more expensive model or version of the original product.
Now you can finish the entry as you did for the Simple product and publish it.
The product page

The product page you just created will look similar to this.
The Cart page

When the customer proceeds to checkout they’ll go to the shopping cart page, showing what they are buying, plus the suggested cross-sell item.
Since we set the Tax Status to “None” you don’t see any taxes added to the total. There won’t be any shipping costs added, and the download link will be available after payment is received, so you won’t see it here.
Step 16. Create a Variable Product

Create a product called Hosting Plans.
Choose Variable from the Product Type drop down. The other parameter choices will change to match your choice.
Step 17. Create Some Attributes

After setting Tax Status and Inventory, go to the Attributes tab and add some information that is common to all the variations of the product.
Click the add button and add pairs. The Attribute Name and the Values will appear on the website. These attributes are for informational purposes only. There is an additional step for createing the variable attributes.
They will look like this on the site.

When a customer visits this product they will see a new tab on the product page for Additional Information, and the list will be visible. You can add lots of attributes. Attributes are included in searches, so someone searching for “linux hosting” for example will be able to find this product in the search results.
Step 18. Add the Variable Attributes.

Go to:
Dashboard > WooCommerce > Products > Attributes.
Add a new attribute called hostingplans and Label it Hosting Plans.
Choose Select from the drop down.
Click Add Attribute.
Step 19. Add the variations

Click Configure terms on the right side of the page after you have created the attribute.
Step 20. Create a list of variations.

The process is similar to adding the attribute, but these are like “sub-attributes” to the attribute. So you have an attribute called Hosting Plans, with three variations, an Ecommerce, Business and Family Plan. Add each option until your page looks like the one in the image above.
Step 21. Add the variations to the product

Go back to your product entry page and the Product Data Panel and click on the Attributes tab again.
Choose Hosting Plans from the drop down
Click the Add button
Fill in the check boxes
In the Values box, type “Ecommercer Plan | Business | Plan | Family Plan”. Separate each term with a “|” pipe. Usually above the enter key on the keyboard. Press SHIFT + “\” (backslash) to get the pipe character. When you type it in it will have pipes, after saving it will show commas between the entries.
Step 22. Add the prices to the variations

Go to the Product Type Options panel on the product entry page. Choose the variation you want to activate first.

Click Add Variation to add more options.
Choose the Variation in the drop down for each product.
Give each Variation a different price
Your product page after adding the variations.

An option box is now part of your product entry. The picture and price will change with each selection.
An additional attribute is added to your Additional Information tab that lists the variations.
Step 23. Create a Grouped Product

Go through all the steps, but choose Grouped from the product type.
Set your Inventory Attributes, Up-sells and Cross-sells. (Up-sells are set up the same as Cross-sells. We skipped detailed instructions since they are the same.)
Add your text and images and publish the group. You don’t need a price, because the price will be calculated as the customer makes selections from the group.
Creating a new product and adding it to the Grouped Product

That’s all you need to do. As you create new products you will see additonal choices in the Grouping field. Choose the group you want the product to belong to. This won’t affect it’s category or anything else. You can also add already existing products to the group.
Adding an existing product to the Grouped Product

You can quickly add existing products by going to the product list and clicking on “Quick Edit” as you do for any post. Change the Parent in the drop down menu labeled Parent.
Mark all new and existing products that you want to be presented on a single page into the same parent group. Here’s what your product detail page will look like after you have added several products.

Your customer will be able to add several items to the package at one time by choosing the quantity of each and adding them to the cart. Since the lowest price item in the package is free, it shows the prices as being “From $0.00”.

This is the cart after I’ve added one selection of each product from the bundle.
The finished Shop page.

Samples of the thumbnails for the catalog page. If you…
Enter no photo
Enter a photo that doesn’t have square proportions and is smaller than the thumbnail size
Enter a really large photo that doesn’t have square proportions
Marked down Items have a green circle that says Sale
Website Package shows the lowest price item in the package. Since I included the Free Extras, it shows as 0.00 in the list. But they will see all the choices when they visit the page.
I didn’t adjust any of the defaults. You can play with the defaults and also get other templates that have much different settings so you can get the result you want.
Nice article Ed! I thought I recognized the dog 🙂
We’ll check it out.. take care
well done amazing tutorial Ed. But I have an issue, my “Set the image as a Featured Image” doesn’t appear on my product page? Do you know why?
And also I would like to rename “products” to services. any suggestion from you?
Hi and welcome!
Good questions, guys! We would love to get into a discussion with you on this. If you are a student at [url=http://legacyostrainingcom.kinsta.cloud]legacyostrainingcom.kinsta.cloud[/url], please log into the support forum ([url=http://www.legacyostrainingcom.kinsta.cloud/support-forum/)]http://www.legacyostrainingcom.kinsta.cloud/s…[/url] and post the question in there, so that one of our support techs can look into it for you. If you’re not a student, I hope you’ll consider becoming one, so that we can give you the attention you deserve. You can find out more about our online class at [url=http://www.legacyostrainingcom.kinsta.cloud/online]www.legacyostrainingcom.kinsta.cloud/online[/url]
Kind regards,
Nick
Do you know if it is possible to specify an additional cost for certain variations instead of having to specify the total price for every combination?
I want to specify an extra item that would be supplier with a product for an extra fee and let the user choose that.
Thanks for the very nice tutorial. WooCommerce is very interesting, I’d love to read more about it.
The variations are a huge hassle. All I need is the ability to have a radio button selection for choice of earring type – clip on, french wire, etc. Doesn’t change the price and don’t want to configure it for every single earring entry. Maybe someone will write a plug in soon….
@Nancy there’s an extension for that; [url=http://www.woothemes.com/extension/product-addons/]http://www.woothemes.com/ex…[/url]
I had the hardest time setting up a drop down variation for different sizes of shoes that I offer. Same price… just different sizes. The sleepless nights were many and frequent. This walk through helped a bunch.
No doubts, woocommerce is the best ecommerce plugin that is available free with lots of premium features….
How to make drop-down menu with the size of shoes! Help me please: (
Really enjoyed your tutorial, thank you.
Any idea if you can add multiple product pages? Say for example I sell books and cakes and I’d like each on its own page…
Hi there,
Is there any way to change the select box on variable product to radio button?
I really need that.
Thank You
Great tutorial! I’m still trying to figure out if it’s possible to attach an image to multiple products. This works for the featured image, but does not appear to work for alternative images. Please enlighten if any suggestions.
Hello! I’m new to woocommerce and I need help. When I post my product for the first time, it doesn’t show on the home page. Just the “Shop” tab. What do I need to do for my home page to work?
useful article,,,,,!
btw, what a good template for this plugin?
I sell computer hardware, like: monitor, mouse, modem,etc.
thx b4…
Thanks for an awesome tutorial, i just want to ask how does the onsale widget which is included in woocommerce widgets works. When i put it on my site it gives me latest product which has no sale price set rather than a product on sale. What is the criteria for listing calling a product “onsale” , is it that both fields “sale price” and “regular price” is filled?
I have a problem with woocommerce showing a sitemap under my products and categories. Do anyone know how to fix this problem?
Thank you so much, this helped sooo much.
Thank you so much. This very very useful for me — WordPress Newbie.
Brilliant run-through. Greatly Appreciated.
Very helpful. Thank you so much for the detailed primer.
Any recommendations on Genesis Child Themes designed to work with WooCommerce?
Happy Holidays,
A
woocommerce is good so far, but i have problem when i translating in indonesia. there are some part that i couldn’t because hidden. any suggest to resolve it, please
HI great tutorial! Very thorough! I had a quick question, if I am offering classes and do not want to show a photo, can you remove the photo from the product page and just have the product description?
how to make link in WooCommerce atrribute?
how to add manufacture without use tag and category Thanks
I want to sell items in different pages, how can I do that?
thanks
I like WooCommerce but the only issue that I can’t find a solution for is Permalinks give 404 errors if you don’t use default settings. I recently started a virtual stores and this Article show me that woocommerc is the best choice.
[url=http://www.zoplay.com]Zoplay[/url]
Woocommerce is Great if you are using this on clients sites. Virtue is a multipurpose WooCommerce toolkit to create fully functional eCommerce website. Main reasons it is easier to setup and required very few modifications to fit in with theme.
[url=http://www.zoplay.com]Zoplay[/url]
Hi ostraining team, Is there any new tutorial? It was 2011 version. And now 2017. Please add new tutorial. Thanks
Hi Ted. Our WooCommerce video tutorial is regularly updated: [url=https://www.legacyostrainingcom.kinsta.cloud/class/woocommerce/]https://www.legacyostrainingcom.kinsta.cloud/…[/url]
Hi Steve, Thank you so much for the information. I hope your provided info will help me a lot.
You are most welcome Ted