Complete guide to WooCommerce product restrictions, dependencies & linked products

WooCommerce product restriction plugins

WooCommerce AJAX cart disabled
You can use product tables and quick view with plugins that restrict which products people can buy.

People using our WooCommerce Product Table and WooCommerce Quick View Pro plugins often ask how to add extra restrictions or dependencies to control what their customers can and can't buy.

They want to restrict how many products their customers can buy; restrict quantities; or make products dependent on each other so that you can't buy one without the other. Others want to group products in specific ways, simplifying the buying process.

There are lots of plugins that you can use to add WooCommerce product restrictions to your one-page order form or quick view lightboxes. I'll tell you about them all so that you can choose the right ones for your store.

WooCommerce Force Sells

WooCommerce Force Sells Plugin

What it does: The official WooCommerce Force Sells extension automatically adds a product to the cart when the customer adds a specific product to their cart. The cost of the hamper will be whatever you have set as the price in WooCommerce.

Example: You're creating a build-your-own product website selling gift hampers. You want to force customers to buy a $50 hamper box when they add hamper contents (e.g. a box of chocolates or bottle of wine) to the cart. You can use the Force Sells plugin to link the products so that whenever you add hamper contents products to the cart, a hamper is added too. The customer will pay the price for each of the hamper contents products they have added. They'll also pay $50 for the hamper product.

Get Force Sells

WooCommerce Chained Products

WooCommerce Chained Products Plugin

What it does: WooCommerce Chained Products is similar to Force Sells, but the linked product is given away as a gift, and is not chargeable. You can still sell the linked product separately and set a price for it. However, it will be given away free of charge when you use it as a chained product.

Example: The Dr. Claudia Welch website offers a free audio track whenever you add a book. They use WooCommerce Chained Products to automatically add an audio track to the cart (free of charge) whenever you buy a book. To test this out, try adding a book to the cart such as this one - you will see that a free audio track also appears in the cart as a gift. Customers can also buy and pay for the same audio track separately, if they prefer.

Get Chained Products

WooCommerce Product Dependencies


Woo Product Dependencies is a free WordPress plugin that works beautifully with WooCommerce Product Table and Quick View. It lets you create advanced WooCommerce product restrictions using various logical rules. You can restrict a product so that it can only be purchased if the customer has already bought another specific product, and/or has that product in their cart.

Example: You're creating a website selling WooCommerce customizable products, with graduation gowns and hats. You wish to restrict the hat products so that people can only buy them if they purchase a gown at the same time.

Get Product Dependencies

WooCommerce Grouped products

WooCommerce Grouped Products

WooCommerce Grouped products are built into WooCommerce itself, and don't require any separate plugins. They offer a simple way to link basic (non-variable) products so that they appear together on the single product page or in a quick view lightbox. Customers can choose which ones to add to the cart, or even add them all at once.

ExampleYou're creating a WooCommerce music store and want to list all the songs from an album as separate products on the album page. To do this, you create a grouped product for the album, add each track as a product within the group, and they will all appear on the single product page. Customers can select one or more tracks and quickly add them to the cart.

Compatibility notes

  • If you wish to list Grouped products using WooCommerce Product Table then you'll need to use one of the options on this page to tag all the products in the group in a way that you can display using WooCommerce Product Table. That way, you can create a product table listing all the products from a specific group.
  • Alternatively, you can just add quick view to your product tables. List your grouped products using WooCommerce Product Table. Customers can click on the quick view links to view the products in the group. Then, they can add them to the cart from the quick view lightbox. WooCommerce Quick View Pro fully supports grouped products, so they will automatically work in the lightbox.

WooCommerce Product Bundles

The official WooCommerce Product Bundles extension lets you group products by offering them as a bundle for a combined price. You can also use it to sell individual products, with recommended products underneath for a discounted price.

The Bundles extension doesn't offer WooCommerce product restrictions in the same way as Force Sells, Chained Products and Dependencies. The bundles are presented as optional.

Example: You're selling bikes in WooCommerce and want to create a bundle where people can purchase the bike along with a helmet and lights for a discounted price.

Please note that Product Bundles doesn't currently integrate with WooCommerce Product Table. If you wish to list products in a table layout then you should use one of the other plugins recommended in this article or use the suggested workarounds in our knowledge base. Alternatively, you can list product bundles in the product table and allow customers to purchase them from a quick view lightbox, where there are no limitations.

Get Product Bundles

WooCommerce Composite Products

WooCommerce Composite Products lists products in a more advanced, more configurable way than product bundles. It lets you create multi-stage product configurators, with each stage containing a selection of products to choose from.

Example: You're selling custom built cars and want to create a configurator where customers choose options such as wheels, colors, internals, storage and extras. This way, they can order composite products in a 5-step process.

Please note that Composite Products doesn't currently integrate with WooCommerce Product Table. If you'd like to list products in a table view then you should use a different plugin from this article or use the suggested workarounds in our knowledge base. You can also list composite products in a table and use WooCommerce Quick View Pro for the actual purchasing, because the quick view lightbox works perfectly with composite products.

Get Composite Products

Minimum and maximum quantities

WooCommerce minimum maximum quantity product table

So far, we've looked at WooCommerce product restrictions that control which products people can buy. Maybe you'd rather restrict product quantities in WooCommerce instead?

A WooCommerce minimum and/or maximum quantity plugin lets you set rules controlling how many of each product your customers can buy.

ExampleYou're creating a 'build-a-box' website selling custom cosmetics boxes, and want to force customers to buy between 5 and 10 items to go in their box. You can achieve this by setting a minimum quantity of 5 and a maximum quantity of 10.

Recommended plugin: You can set all types of quantity rules with our WooCommerce Quantity Manager plugin. This is designed to work with both WooCommerce Product Table and Quick View Pro. Use it to create global, category, product or variation-level quantity restrictions. For example, you can use it to force customers to purchase 5 products from the 'Box Contents' category.

How to choose a WooCommerce product restrictions plugin

As you can see, there are lots of ways to add restriction rules to your WooCommerce products. Read through the description and examples of each plugin. Then you can choose the one that fits best with the logic you need.

For each Woo restrictions plugin, I've included details of how you can use it with WooCommerce Product Table and WooCommerce Quick View Pro.


  1. Hi! Thanks for the good explanation with examples. I have a question: i have a specific food menu that people can buy during a month. Now i don't want people to buy a februari menu with a march menu at the same time. Is there a plugin i can use, to exclude product A from product B?

    • Hi, Stef. I'm glad to hear this was helpful. I'm afraid I'm not aware of any plugin that would allow for your use case of allowing you to add products to the cart only if they are all in the same category or have the same tag (i.e. a category or tag for your February menu products).

      You or your developer can consider or look into achieving this via custom coding. If you're unsure or unfamiliar with how to do so and don't have a developer who can do this for you, then I recommend posting a job on Codeable where their pre-approved WordPress experts will send you a quote. We have partnered with them to provide plugin customization for our customers.

      Codeable has several developers who are experienced in customizing our plugins - to request a quote from them, select Domagoj Kovacevic, Krasen Slavov, Onur Demir, Liam Bailey, Nitin Yawalkar and Felipe Elia as your preferred experts.

  2. Hello,
    Maybe You could help me with my problem. I'm having trouble with finding solution to my woocommerce site.
    I'm trying to sell group product (or bundle) with two item with depenses. Product A and product B will be sell together, product A min. quantity is 5, product B min quantity is 1. I can change Product quantity up but it can't fall below 5 if product B is added. When I change quantity of product B to 2 or 3, then product A quantity changes to 10 or 15. Meaning product A min. quantity is multiply by Quantity of product B.
    I can change product A quantity manual but it cannot fall below 5 multiply by quantity of product B.

    Am I making sense to You :D

    • Hi, Arkadiusz. Thanks for chiming in and I appreciate the detailed description of your concern. I believe I do follow and realize what you would like to achieve is quite complex! Hence I suggest that you relay these details and reach out to the author of the plugin mentioned in this article that you're using on your site for more advice on the exact logic you need to use to implement this.

Please share your thoughts...

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