Model
AbstractType
Magento\Catalog\Model\Product\Type\AbstractType
What it does
This abstract class serves as the foundation for all product type implementations in Magento 2 (simple, configurable, bundle, etc.).
Developers extend this class when creating custom product types or when needing to understand how products are processed for cart additions, options validation, and product-specific behaviors like weight calculations, SKU generation, and salability checks.
Public Methods
- deleteTypeSpecificData()
- setTypeId()
- getRelationInfo()
- getChildrenIds()
- getParentIdsByChild()
- getSetAttributes()
- attributesCompare()
- getEditableAttributes()
- getAttributeById()
- isVirtual()
- isSalable()
- processConfiguration()
- prepareForCartAdvanced()
- prepareForCart()
- processFileQueue()
- addFileQueue()
- getSpecifyOptionMessage()
- checkProductBuyState()
- getOrderOptions()
- save()
- beforeSave()
- isComposite()
- canConfigure()
- canUseQtyDecimals()
- getSku()
- getOptionSku()
- getWeight()
- hasOptions()
- updateQtyOption()
- hasRequiredOptions()
- getStoreFilter()
- setStoreFilter()
- getForceChildItemQtyChanges()
- prepareQuoteItemQty()
- assignProductToOption()
- setConfig()
- getSearchableData()
- getProductsToPurchaseByReqGroups()
- processBuyRequest()
- checkProductConfiguration()
- hasWeight()
- setImageFromChildProduct()
- getIdentities()
- getAssociatedProducts()
- isPossibleBuyFromList()