This renders a detailed page for an individual product. It mainly includes product details, a form that visitors use to select a variant, its quantity and add it to the cart. ms.product widget is used to fetch the complete details of the product.
Breadcrumb gives links to category and it's parent categories to which the product belongs. If a product lies under two or more categories then it provides the link to the last category to which it belongs.
<ol class="breadcrumb">
<li><a href="/">Home</a></li>
<li ng-if="product.category.parent.name"><a href="/browse/{{product.category.parent.alias}}">{{product.category.parent.name}}</a></li>
<li ng-if="product.category"><a href="/browse/{{product.category.alias}}">{{product.category}}</a></li>
<li class="active">{{product.name}}</li> </ol>
A product can have single or multiple images. These can be accessed by using
This specifies the title or name given to the product.
<h1>{{product.name}}</h1>
This specifies the SKU (Stock Keeping Unit) of the product. All products and their variants have unique SKU codes.
{{product.sku}}
This specifies the name of the brand that product belongs to.
{{product.brand}}
<div ms-widget="ms.entity" ms-data-entity="ms.brands"
ms-data-alias="brands" ms-data-filters='[{"field":"name","value":"{{product.brand}}"}]' >
{{brands[0]}} // provide brand details
</div>
This specifies the seller's title of the product.
return the unique id of seller
{{product.seller}}
By using ms.seller
widget details of the seller can be fetched.
<div ms-widget="ms.seller" ms-data-id="product.seller" >
{{seller}} // provide seller details
</div>
Use product.features to show the few highlights of the product to engage customers.
<div ng-repeat="feature in product.features">
<span>{{feature}}</span>
</div>
Use product.price to show the selling price of the product. Use ms.currency filter to format the amount in currency format.
<div>{{product.price|msCurrency}}</div>
Use product.compare_price to show the original price (MRP/MSP/RRP etc.) of the product. Use ms.currency filter to format the amount in currency format.
<div>{{product.compare_price|msCurrency}}</div>
Use product.discount_total and product.discount_percentage variables to show the product discount.
{{product.discount_total}}
{{product.discount_percentage}} %
This is used to check the product is available under Cash On Delivery on particular pin code or not.
Example:
<div ms-widget="ms.checkcodAvailability">
<input type="text" ng-model="pincode">
<button ng-click="check()"> Check </button>
{{availability}} // this will return availabilty result
product.options return the product options. Following variables are available:
{{product.inventory_quantity}}
This will show on basis of some conditions.
When all conditions are satisfied, then the inventory quantity for selected variants will show respectively.
These conditions are :
It is used to show the product description on site.
{{product.description}}
product.description is available as HTML. So, we can show it by using
Example:
<div ng-bind-html-unsafe="product.description">
These are the products of the same category to which product belongs.{{related_products}}
returns the array of related products
Example:
<div ng-repeat="product in related_products> {{product}} </div>
From this section, a visitor can give ratings to the product or add his reviews about the product. Click here for the details of product reviews section.
ms.product
ms.responsiveImage
ms.reviews
ms.form.addReview