Documentation You are here: start » v » 2.0 » products

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
v:2.0:products [2017/06/16 23:44] – [Product Grouping, Bundling, Ensembles] marijav:2.0:products [2024/04/02 14:30] (current) – [Advanced Products] adam
Line 49: Line 49:
  
 ==== Advanced Products ==== ==== Advanced Products ====
-You are limited only by your imagination when it comes to how you'd like your add-to-cart links or forms to function, and thus, how complex you want your products to be. There are a variety of options and parameters [[#a_complete_list_of_product_parameters|listed below]] as well as in [[.:cheat_sheet|the cheatsheet]]. If you need help just [[http://forum.foxycart.com/|ask on our forum]].+You are limited only by your imagination when it comes to how you'd like your add-to-cart links or forms to function, and thus, how complex you want your products to be. There are a variety of options and parameters [[#a_complete_list_of_product_parameters|listed below]] as well as in [[.:cheat_sheet|the cheatsheet]]. If you need help, please don't hesitate to [[https://foxy.io/contact|contact us]].
  
 +===== Cart Limits =====
 +
 +A Foxy cart is currently limited to a maximum of 250 products in a single transaction, and each product can have a maximum of 100 custom product options.
  
 ===== Product Grouping, Bundling, Ensembles ===== ===== Product Grouping, Bundling, Ensembles =====
Line 56: Line 59:
 If you have a bundle of products, you can add these products in groups so that some products show up under a parent product and are not individually editable. For example, imagine selling a CD/Poster package that contains two individual products where the parent product is the CD and the child is the $0 poster. (You wouldn't want your customer to be able to delete the CD and order the poster for $0.) If you have a bundle of products, you can add these products in groups so that some products show up under a parent product and are not individually editable. For example, imagine selling a CD/Poster package that contains two individual products where the parent product is the CD and the child is the $0 poster. (You wouldn't want your customer to be able to delete the CD and order the poster for $0.)
  
-You can also group products to be added to the cart together, such as accessories or an ensemble of items. This allows your customer to add the grouped items with one click, and they can also remove individual items or change quantities in the cart. See [[#grouped_or_multi-product_add_to_cart|Grouped or Multi-Product Add]] to view instructions for adding multiple products to the cart at once.+You can also create items to be added to the cart together, such as accessories or an ensemble of items. This allows your customer to add all the items with one click, and they can also remove individual items or change quantities in the cart. See [[#adding_multiple_products_without_parent/child_relationships|Adding Multiple Products without Parent/Child Relationships]] to view instructions for adding multiple products to the cart at once.
 ==== Adding child products ==== ==== Adding child products ====
 You can tell FoxyCart that a product should be attached to another product by using the product option ''parent_code''. The parent code is simply the code of the parent to which the product should be attached. You can tell FoxyCart that a product should be attached to another product by using the product option ''parent_code''. The parent code is simply the code of the parent to which the product should be attached.
  
-=== Example ===+=== Examples === 
 +== Link example ==
 <code html> <code html>
-  <a href="https://YOURCARTDOMAIN.foxycart.com/cart?name=Parent+product&code=741&price=19.99&2:name=Child+product&2:price=1.99&2:parent_code=741">Add bundled products to the cart</a>+<a href="https://YOURCARTDOMAIN.foxycart.com/cart?name=Parent+product&code=741&price=19.99&2:name=Child+product&2:price=1.99&2:parent_code=741">Add bundled products to the cart</a
 +</code> 
 + 
 +== Form Example == 
 +<code html> 
 +<form action="https://YOURDOMAIN.foxycart.com/cart" method="post"> 
 +    <input type="hidden" name="name" value="Parent product" /> 
 +    <input type="hidden" name="price" value="19.99" /> 
 +    <input type="hidden" name="code" value="741" /> 
 +    <input type="hidden" name="2:name" value="Child product" /> 
 +    <input type="hidden" name="2:price" value="1.99" /> 
 +    <input type="hidden" name="2:parent_code" value="741" /> 
 +    <input type="submit" value="Buy Bundled Products" /> 
 +</form> 
 +</code> 
 + 
 +== Form example with optional child == 
 +This example is an extension of the basic form example above, but allows for the customer to check a checkbox for whether they want to also add the child product or not. 
 +<code html> 
 +<form action="https://YOURDOMAIN.foxycart.com/cart" method="post"> 
 +    <input type="hidden" name="name" value="Parent product" /> 
 +    <input type="hidden" name="price" value="19.99" /> 
 +    <input type="hidden" name="code" value="741" /> 
 +    <input type="hidden" name="2:name" value="Optional Child product" /> 
 +    <input type="hidden" name="2:price" value="1.99" /> 
 +    <input type="hidden" name="2:parent_code" value="741" /> 
 +    <input type="hidden" name="2:quantity" value="0" /> 
 +    <label><input type="checkbox" name="2:quantity" value="1"> Also add the Optional Child Product ($1.99)</label> 
 +    <br> 
 +    <input type="submit" value="Add To Cart" /> 
 +</form>
 </code> </code>
  
Line 75: Line 109:
  
 ==== Subscriptions within bundled products ==== ==== Subscriptions within bundled products ====
-If a subscription is added to the cart as part of a bundle where the parent product is either not a subscription or has different subscription settings (dates), when the subscription runs the second time the ''parent_code'' will be stripped from the product so that it can be added to the transaction without error.+Only products with subscription parameters will be included as a recurring subscription, so if you bundle a non-subscription product with a subscription, **the non-subscription product will not be included the next time the subscription runs and going forward**. 
 + 
 +If you bundle subscription products with different subscription parameters, they will become different subscriptions. If you bundle subscription products with the same subscription parameters, they will be on the same recurring subscription. 
 + 
 +If a subscription is added to the cart as part of a bundle where the //parent product is either not a subscription or has different subscription settings// (dates), when the subscription runs the second time the ''parent_code'' will be stripped from the product so that it can be added to the transaction without error. If the parent product is a subscription and the child product is one-off, then there is no need to drop the "parent_code" on the subscription, because there isn't one.
  
 ==== Caution: adding multiple sets of products ==== ==== Caution: adding multiple sets of products ====
 You'll want to be careful about adding multiple sets of products with different child products where the quantity is locked to the parent. Let's say you have a parent bundle product with a Shirt and CD. The shirt comes in various sizes and the CD can be one of a few different varieties. If you use ''quantity_min=1'' to lock the child products to the parent product, adding one bundle with a Large shirt and "The Carpenters" and a second bundle with a Small shirt and "The Supremes" will result in 1 bundle product with a quantity of 2 with all four sub-products attached and each with a quantity of 2. A good way to avoid this is to change something about the parent product so it's a different product each time. A random product code is a great way to do this. You'll want to be careful about adding multiple sets of products with different child products where the quantity is locked to the parent. Let's say you have a parent bundle product with a Shirt and CD. The shirt comes in various sizes and the CD can be one of a few different varieties. If you use ''quantity_min=1'' to lock the child products to the parent product, adding one bundle with a Large shirt and "The Carpenters" and a second bundle with a Small shirt and "The Supremes" will result in 1 bundle product with a quantity of 2 with all four sub-products attached and each with a quantity of 2. A good way to avoid this is to change something about the parent product so it's a different product each time. A random product code is a great way to do this.
  
-==== Grouped or Multi-Product Add to Cart ====+==== Adding Multiple Products without Parent/Child Relationships ====
  
-You can make a similar grouping of products as above (adding them to the cart with one click), but allow your customers to remove items and change quantities. In this case, you would not use the parent/child relationship. In this form example, you will include all products within the same ''<form>'' tag and add the integer prefix (i.e. 1:, 2:, etc.) to each item you would like grouped. Here'an example:+If you'd simply like to add multiple products to the cart at the same time, but //not// have those products be bundled or otherwise related as described above, that's totally doable. In this case, you would simply not use the parent/child relationship. In this form example, you will include all products within the same ''<form>'' tag and add the integer prefix (i.e. 1:, 2:, etc.) to each item you would like grouped. Here'a form add-to-cart example:
  
 <code html> <code html>
-<form action="http://YOURDOMAIN.foxycart.com/cart" class="foxycart" method="post">+<form action="https://YOURDOMAIN.foxycart.com/cart" class="foxycart" method="post">
     <input type="hidden" name="name" value="Fancy Smartphone" />     <input type="hidden" name="name" value="Fancy Smartphone" />
     <input type="hidden" name="price" value="199.99" />     <input type="hidden" name="price" value="199.99" />
Line 92: Line 130:
     <input type="submit" value="Buy a Smartphone and a Leather Case!" />     <input type="submit" value="Buy a Smartphone and a Leather Case!" />
 </form> </form>
 +</code>
 +
 +Here's a link add-to-cart example:
 +<code html>
 +https://YOURDOMAIN.foxycart.com/cart?name=Fancy+Smartphone&price=199.99&2:name=Leather Case for Smartphone&2:price=9.99
 </code> </code>
 ===== What About Security? ===== ===== What About Security? =====

Site Tools