[AddLineItem Parameters]values[/AddLineItem]

Adds a product to the specified shopping cart.

To add products to a visitor's shopping cart, put an AddLineItem context into a template (alternately, you may use the Add command from a URL or a FORM). Whenever WebCatalog encounters an AddLineItem context, it opens the shopping cart file (creating a new one if necessary) and adds the product (identified by its SKU) to the end of the LineItems in the shopping cart. The item's price, taxable, canEmail, and unitShipCost information is found by looking for the values of those fields in the product database. You can use a different price by creating a Formulas.db database. Also see Remove, Clear, ShowCart, [SetLineItem] and Purchase.

Example (normally you would put the following text into a .tpl file on your server and use a web browser to link to it):

[AddLineItem cart=5678&sku=1234&db=catalog.txt]quantity=5&textA=Red[/AddLineItem]

Try It!

Note: you may also add line items to order files that are not inside the ShoppingCarts folder. Using file=/folder/folder/cartname instead of cart=cartname, you can affect any order file in any folder. This is most often used for "back door" administrative maintenance by people inside your organization.

The database "catalog.txt" is opened, and sku 1234 is found. Shopping cart file "5678" is opened, and a new line item is added to the bottom of the list, with a quantity of 5 and textA set to "Red" (as specified in the context above), with price taken from the database's price field.

Here are the parameters to the AddLineItem context:
Parameter Description

db

Product database that contains the SKU, price, and other information

sku

Uniquely identifies which product should be added to the cart.

cart

Shopping cart file (from ShoppingCarts folder) that is to be affected

file

(alternative to cart) Shopping cart file (from any folder) that is to be affected. Unlike cart, this file can be in any folder. Specify the file URL-relative to the template.
Context values Description (these values go inside the context)

textA

(Optional) Extra information of any kind that you want associated with this line item. Often used to store extra product information, such as "shoe size" or "color". Also used to pass catalog database fields such as [title] through to the order file

textB

Same as textA above

textC

Same as textA above

textD

Same as textA above

textE

Same as textA above

quantity

(Optional) Tells how many of this SKU should be added to the cart. This quantity is used when calculating totals, unitShipCost, etc.

taxable

(Optional) "T" or "F". Overrides "taxable" field in the database - normally the information about the item's taxable status is taken from a field called "taxable"

canEmail

(Optional) "T" or "F". Overrides "canEmail" field in the database - normally the information about the item's canEmail (electronically deliverable) status is taken from a field called "canEmail"

unitShipCost

(Optional) A number indicating the item's price for shipping. Overrides "unitShipCost" field in the database - normally the information about the item's unitShipCost status is taken from a field called "unitShipCost". ShipTotal and GrandTotal use this number (multiplied by quantity) to determine the total shipping and grand total.

Header Field

You may set any shopping cart header field (such as Name, taxRate, Address1, etc.) at the same time you add a product to the cart.