Variant Model
Variants are Craft Elements and also purchasables.
VariantModel objects have the following attributes and methods:
#Attributes
#title
The variants title as generated by the title formatter on the product type definition.
#id
The ID of the variant in the system.
#purchasableId
Returns this variant’s ID - as variants are purchasables.
#product
Returns this variant’s Product model
#price
The listing price of the variant.
#salePrice
The price of the variant after sales have been applied. Will be equal to price if no sales were applicable.
#sku
The SKU of the variant.
#isDefault
Returns true
or false
if this variant is the default variant of a product.
#hasStock
Returns true
or false
if the variant has unlimited stock or a stock count greater than zero.
#unlimitedStock
Returns true
or false
if this variant has unlimited stock
#stock
Returns the stock count on hand, or zero if unlimitedStock is true.
#maxQty
The maximum quantity that can be ordered at once for this variant (in a single cart/order)
#minQty
The minimum quantity that can be ordered at once for this variant (in a single cart/order)
#weight
The variants weight
#height
The variants height
#length
The variants length
#width
The variants width
#cpEditUrl
The URL to edit this variant’s edit page in the Control Panel.
#sortOrder
Returns the order number of the variant as defined on the Edit Product page.
#onSale
Returns true
or false
when any sales are applied to this variant. This is just a helper to test if there is a saleAmount
not equal to zero.
#salesApplied
Returns an array of sales that have been applied, allowing you to access the description of the sale with {{ variant.salesApplied[0].description }}
#description
The description of the purchasable which is the result of the product type’s “Order Description Format” option.