ecommerce_item_quantity
This component renders a form input element allowing a quantity to be set for when the source item is added to the shopping cart.
{% component type: "ecommerce_item_quantity", itemId: "<Item ID>" %}
Parameters and Options
ecommerce_item_quantity
This is the name of the entity that needs to be used for the component retrieving function.
<Item ID>
<path/to/layout>
If an empty string, nothing will be rendered.
If paramater is not included, the default virtual layout will be rendered (see below).
<yourLiquidVariableName>
Your collectionVariable value must only contain English letters, numbers or underscores. Spaces or special characters are not supported.
Liquid Output
The below example shows the output data for the specified item ID. The Liquid data output from this example would look like the following (for example, when using a collectionVariable to create the collection):
{
"Id": 2535,
"Name": "DEMO Product 1",
"Url": "/catalogs/demo-product-1",
"Url_List": [
"/catalogs/demo-product-1"
],
"UrlSlug": "demo-product-1",
"ParentId": 2485,
"ParentId_List": [
-1
],
"ParentName": "",
"ParentUrl": "",
"TemplateName": "",
"Module_Alias": "Product",
"Module_ID": 2485,
"Enabled": true,
"ReleaseDate": "2020-05-04T23:00:00",
"ExpiryDate": "2099-12-11T13:00:00",
"SiteSearchKeywords": [
"figgle"
],
"Description": "<p>Sample product 1 for the ecommerce store.</p>",
"Weighting": 0,
"DisableForSiteSearch": false,
"SKUCode": "DEMO1",
"SmallImage": "/images/template-detail-dinewine-mobile@2x.png",
"LargeImage": "/images/template-detail-dinewine-desktop@2x.jpg",
"OnSale": false,
"IsGiftVoucher": false,
"ProductWeight": 0.0000,
"ProductWidth": 0.0000,
"ProductHeight": 0.0000,
"ProductDepth": 0.0000,
"EnableDropShipping": false,
"UnitType": "",
"MinimumUnits": 0,
"MaximumUnits": 0,
"RecurringType": "None",
"IsShippable": true,
"IsDownloadable": false,
"NumberOfPossibleDownloads": 0,
"Supplier": 0,
"Price": 39.9500,
"PriceHtml": "<span data-cms_product_data_price=\"2535\">39.95</span>",
"priceWithTax": 41.55,
"priceWithTaxHtml": "<span data-cms_product_data_price_with_tax=\"2535\">41.55</span>",
"RecommendedPriceWithTax": 51.95,
"RecommendedPriceWithTaxHtml": "<span data-cms_product_data_recommended_price_with_tax=\"2535\">51.95</span>",
"RecommendedPrice": 49.9500,
"RecommendedPriceHtml": "<span data-cms_product_data_recommended_price=\"2535\">49.95</span>",
"EnableInventoryControl": true,
"HasGeneratedInventoryProducts": true,
"InStockHtml": "<span data-cms_product_data_in_stock=\"2535\">170</span>",
"IsHide": false,
"InStock": 170,
"IsDisable": false,
"taxRate": 0.0400,
"IsGroupedProduct": true,
"decimalsQuantity": 2,
"VolumeDiscount": [
{
"Price": 39.9500,
"Quantity": 0
}
],
"ProductDataJSON": {
"itemId": 2535,
"maximumUnits": 0,
"minimumUnits": 0,
"recommendedPrice": 49.9500,
"QuantityThreshold": [
{
"Price": 39.9500,
"Quantity": 0
}
],
"inStockTotal": 170,
"prices": {
"0": 39.9500
},
"enablePreOrder": false,
"variations": {
"4608": {
"id": "4608",
"enabled": true,
"inStock": 70,
"optionIds": [
"3654"
]
},
"4606": {
"id": "4606",
"enabled": true,
"inStock": 0,
"optionIds": [
"3653"
]
},
"4604": {
"id": "4604",
"enabled": true,
"inStock": 100,
"optionIds": [
"3652"
]
}
},
"attributes": {
"3661": {
"id": "3661",
"isInventory": true,
"name": "Size",
"type": 2,
"required": true,
"optionIds": [
"3652",
"3653",
"3654"
]
}
},
"options": {
"3652": {
"id": "3652",
"attributeId": "3661",
"name": "Small",
"image": "/images/template-detail-crafter-mobile.png",
"price": 0.0000
},
"3653": {
"id": "3653",
"attributeId": "3661",
"name": "Medium",
"image": "/images/template-crafter@2x.jpg",
"price": 2.0000
},
"3654": {
"id": "3654",
"attributeId": "3661",
"name": "Large",
"image": "/images/template-detail-crafter-desktop@2x.jpg",
"price": 4.0000
}
},
"taxRate": 0.0400,
"taxInPercent": 4.0000
},
"ProductDataJsonHTML": "<script>initEcommerceProductPriceVariations(2535,{\"itemId\":2535,\"maximumUnits\":0,\"minimumUnits\":0,\"recommendedPrice\":49.9500,\"QuantityThreshold\":[{\"Price\":39.9500,\"Quantity\":0}],\"inStockTotal\":170,\"prices\":{\"0\":39.9500},\"enablePreOrder\":false,\"variations\":{\"4608\":{\"id\":\"4608\",\"enabled\":true,\"inStock\":70,\"optionIds\":[\"3654\"]},\"4606\":{\"id\":\"4606\",\"enabled\":true,\"inStock\":0,\"optionIds\":[\"3653\"]},\"4604\":{\"id\":\"4604\",\"enabled\":true,\"inStock\":100,\"optionIds\":[\"3652\"]}},\"attributes\":{\"3661\":{\"id\":\"3661\",\"isInventory\":true,\"name\":\"Size\",\"type\":2,\"required\":true,\"optionIds\":[\"3652\",\"3653\",\"3654\"]}},\"options\":{\"3652\":{\"id\":\"3652\",\"attributeId\":\"3661\",\"name\":\"Small\",\"image\":\"/images/template-detail-crafter-mobile.png\",\"price\":0.0000},\"3653\":{\"id\":\"3653\",\"attributeId\":\"3661\",\"name\":\"Medium\",\"image\":\"/images/template-crafter@2x.jpg\",\"price\":2.0000},\"3654\":{\"id\":\"3654\",\"attributeId\":\"3661\",\"name\":\"Large\",\"image\":\"/images/template-detail-crafter-desktop@2x.jpg\",\"price\":4.0000}},\"taxRate\":0.0400,\"taxInPercent\":4.0000});</script>",
"CreatedByMemberId": "0",
"ItemCategories": [],
"ItemCategoryIdList": [],
"ItemTags": [],
"Author": 0,
"Author_Name": "",
"Author_Url": "",
"Item_Rating": 0,
"MyCustomProperty": "My custom value",
"ShowPageForSearchEngine": false,
"MetaTitle": "",
"SEOTitle": "",
"MetaDescription": "",
"CanonicalLink": "",
"SocialMetaTags": "",
"SeoPriority": 0.5,
"EnableAMP": false,
"AMPContent": "",
"OpenGraphProperties": {
"title": null,
"type": null,
"url": null,
"locale": null,
"image": null
},
"ExternalId": 0,
"Params": {
"type": "ecommerce_item_quantity",
"layout": "",
"itemid": "2535",
"collectionvariable": "qtyCollection"
}
}
Virtual Layout
If not using any custom layout or collection, the default virtual layout will output as follows:
<input type="number" data-ecommerce_product_quantity_field="{{this.id}}" {% if this.minimumUnits > 0 %}min="{{this.minimumUnits}}"{% endif %} {% if this.maximumUnits > 0 %}max="{{this.maximumUnits}}"{% endif %} value="{% if this.minimumUnits > 0 and this.params.quantity == null %}{{this.minimumUnits}}{% else %}{{this.params.quantity | default: 1}}{% endif %}"/>
Accessing the Data
JSON Output
You can output the full JSON for your component data by referencing the root Liquid object {{this}}
in your module’s layouts, or directly on your page, if using the collectionVariable
parameter in your component tag.
For example:
{% component type: ... collectionVariable: "myData" %}
You can then render the JSON like so:
{{myData}}
For more details on using this approach, see Part 2 of the free ‘Learning Liquid Course’.
Rendering Property Values
This data is also accessible directly on the Page or Template via a Liquid Collection by adding collectionVariable
to the Component.
An example using collectionVariable
with value "qtyCollection":
{% component type: "ecommerce_item_quantity", itemId: "2535", collectionVariable: "qtyCollection" %}
Accessing the name of the item, which in our example would render the value DEMO Product 1
{{qtyCollection['name']}}