Log in
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()