Log in

Catalog Module

AbstractCollection

Collection

This abstract collection class serves as the base for all Magento 2 catalog entity collections (products, categories, etc.) that use EAV attributes. I...

AbstractModel

Model

This abstract base class provides common functionality for Magento 2 catalog entities like products and categories. Developers extend this class when...

Api\AttributeSetFinderInterface

Interface

This interface defines a contract for finding attribute set IDs associated with specific products. Developers would use this when they need to determi...

Api\AttributeSetManagementInterface

Interface

This interface defines the service contract for managing product attribute sets in Magento 2. Developers use it to programmatically create new attribu...

Api\AttributeSetRepositoryInterface

Repository

This interface defines the contract for managing catalog attribute sets in Magento 2. Developers use this repository to create, retrieve, update, and...

Api\BasePriceStorageInterface

Interface

This interface defines a contract for managing product base prices in Magento 2. Developers use it to retrieve base prices for multiple products by SK...

Api\CategoryAttributeOptionManagementInterface

Interface

This interface defines a contract for managing category attribute options in Magento 2. Developers use this to retrieve all available options for a sp...

Api\CategoryAttributeRepositoryInterface

Repository

This interface defines a repository for managing category attributes in Magento 2. Developers use it to retrieve category attribute metadata, either b...

Api\CategoryLinkManagementInterface

Interface

This interface defines methods for managing the relationship between products and categories in Magento 2. Developers use it to retrieve all products...

Api\CategoryLinkRepositoryInterface

Repository

This repository interface manages the assignment and removal of products to/from categories in Magento 2. Developers use this to programmatically link...

Api\CategoryListDeleteBySkuInterface

Interface

This interface defines a contract for removing multiple products from a category using their SKUs. Developers would use this when they need to unassig...

Api\CategoryListInterface

Interface

This interface defines a contract for retrieving a filtered list of catalog categories in Magento 2. Developers use this to programmatically fetch cat...

Api\CategoryManagementInterface

Interface

This interface defines the contract for managing Magento 2 product categories at a high level. Developers use it to retrieve category trees with confi...

Api\CategoryRepositoryInterface

Repository

This interface defines the contract for managing category data in Magento 2's catalog system. Developers use this repository to perform CRUD operation...

Api\CostStorageInterface

Interface

This interface defines operations for managing product cost data in Magento 2. Developers use it to retrieve, update, or delete product costs by SKU a...

Api\Data\BasePriceInterface

Interface

This interface defines the contract for handling product base prices in Magento 2. Developers use this when working with product pricing operations, p...

Api\Data\CategoryAttributeInterface

Interface

This interface defines the contract for category attribute objects in Magento 2's catalog system. Developers use this when working with custom categor...

Api\Data\CategoryAttributeSearchResultsInterface

Interface

This interface defines the contract for search results when querying category attributes in Magento 2. Developers use this when implementing or consum...

Api\Data\CategoryInterface

Interface

This interface defines the data structure and contract for category entities in Magento 2's catalog system. Developers use it when working with catego...

Api\Data\CategoryLinkInterface

Interface

This interface defines the contract for linking products to categories in Magento 2. Developers use it when working with product-category associations...

Api\Data\CategoryProductLinkInterface

Interface

This interface defines the contract for representing the relationship between a category and a product in Magento 2's catalog. Developers use this whe...

Api\Data\CategoryProductSearchResultInterface

Interface

This interface defines the contract for search results containing category-product relationships. Developers use this when retrieving lists of product...

Api\Data\CategorySearchResultsInterface

Interface

This interface defines the contract for category search results returned by repository search operations. Developers use this when working with the Ca...

Api\Data\CategoryTreeInterface

Interface

This interface defines the data structure for representing categories in a hierarchical tree format within Magento 2. Developers use it when working w...

Api\Data\CostInterface

Interface

This interface defines the contract for managing product cost data in Magento 2. Developers use it when working with product cost information across d...

Api\Data\CustomOptionInterface

Interface

This interface defines the contract for custom product options that customers can select when adding items to their cart. Developers use this when wor...

Api\Data\EavAttributeInterface

Interface

This interface defines the contract for catalog product attributes in Magento 2, extending the base EAV attribute interface with catalog-specific prop...

Api\Data\PriceUpdateResultInterface

Interface

This interface defines a contract for price update result objects that are returned when errors occur during bulk price update operations via Magento'...

Api\Data\ProductAttributeInterface

Interface

This interface defines the contract for product attributes in Magento 2's catalog system. It extends EavAttributeInterface and provides constants for...

Api\Data\ProductAttributeMediaGalleryEntryInterface

Interface

This interface defines the contract for product media gallery entries (images, videos) in Magento 2. Developers use it when working with product media...

Api\Data\ProductAttributeSearchResultsInterface

Interface

This interface defines the contract for search results containing product attributes in Magento 2. Developers use it when implementing or working with...

Api\Data\ProductAttributeTypeInterface

Interface

This interface defines the contract for product attribute type data objects in Magento 2. Developers use this when working with product attribute type...

Api\Data\ProductCustomOptionInterface

Interface

This interface defines the structure for product custom options in Magento 2, allowing developers to create customizable product configurations like t...

Api\Data\ProductCustomOptionTypeInterface

Interface

This interface defines the contract for product custom option types in Magento 2's Catalog module. Developers use it to represent different types of c...

Api\Data\ProductCustomOptionValuesInterface

Interface

This interface defines the contract for individual values within a product's custom option (e.g., dropdown choices, radio button options). Developers...

Api\Data\ProductFrontendActionInterface

Interface

This interface defines the data contract for tracking customer and visitor interactions with products on the storefront, such as product views, compar...

Api\Data\ProductInterface

Interface

This interface defines the standard contract for product data objects in Magento 2's Catalog module. Developers use this interface when working with p...

Api\Data\ProductLinkAttributeInterface

Interface

This interface defines the structure for product link attributes in Magento 2, which describe the properties of relationships between linked products...

Api\Data\ProductLinkInterface

Interface

This interface defines the contract for product link data objects in Magento 2, which represent relationships between products such as related product...

Api\Data\ProductLinkTypeInterface

Interface

This interface defines the contract for product link types in Magento 2, representing the different ways products can be related (e.g., related produc...

Api\Data\ProductOptionInterface

Interface

This interface defines the contract for product options in Magento 2, which represent additional choices or configurations that can be associated with...

Api\Data\ProductRenderInterface

Interface

This interface defines a Data Transfer Object (DTO) for product rendering information needed on the frontend. Developers use this to retrieve all esse...

Api\Data\ProductRenderSearchResultsInterface

Interface

This interface defines a data transfer object (DTO) for holding collections of rendered product information. Developers use this when working with pro...

Api\Data\ProductRender\ButtonInterface

Interface

This interface defines the contract for product action buttons in Magento 2's product rendering system, such as 'Add to Cart', 'Add to Compare', or 'A...

Api\Data\ProductRender\FormattedPriceInfoInterface

Interface

This interface defines the contract for handling formatted HTML price representations in Magento 2 product rendering. Developers use it when building...

Api\Data\ProductRender\ImageInterface

Interface

This interface defines the contract for product image data in Magento 2's product rendering system. Developers use it to access and manipulate product...

Api\Data\ProductRender\PriceInfoInterface

Interface

This interface defines the contract for product price information used in rendering product data via API. Developers use it to access various price ty...

Api\Data\ProductSearchResultsInterface

Interface

This interface defines the contract for product search results in Magento 2's service layer. Developers use it when implementing or consuming product...

Api\Data\ProductTierPriceInterface

Interface

This interface defines the structure for product tier pricing data in Magento 2. Developers use it when working with tiered pricing rules that apply d...

Api\Data\ProductTypeInterface

Interface

This interface defines the contract for product type data objects in Magento 2, representing different product types like simple, configurable, bundle...

Api\Data\ProductWebsiteLinkInterface

Interface

This interface defines the contract for linking products to websites in a multi-website Magento setup. Developers use this when managing product-websi...

Api\Data\SpecialPriceInterface

Interface

This interface defines the contract for managing product special prices in Magento 2. It provides methods to set and retrieve special price values, al...

Api\Data\TierPriceInterface

Interface

This interface defines the contract for tier pricing data objects in Magento 2. Developers use this when working with quantity-based pricing rules tha...

Api\ProductAttributeGroupRepositoryInterface

Repository

This repository interface manages product attribute groups in Magento 2's catalog module. Developers use it to create, retrieve, update, and delete at...

Api\ProductAttributeIsFilterableManagementInterface

Interface

This interface defines methods to manage the 'is_filterable' property of product attributes through REST/SOAP APIs. Developers use this when they need...

Api\ProductAttributeManagementInterface

Interface

This interface defines the contract for managing product attributes within attribute sets in Magento 2. Developers use this to programmatically assign...

Api\ProductAttributeMediaGalleryManagementInterface

Interface

This interface defines the contract for managing product media gallery images through the API. Developers use this to programmatically add, update, re...

Api\ProductAttributeOptionManagementInterface

Interface

This interface defines the contract for managing product attribute options in Magento 2. Developers use this to programmatically retrieve, add, or del...

Api\ProductAttributeOptionUpdateInterface

Interface

This interface defines a contract for updating existing product attribute options in Magento 2. Developers would use implementations of this interface...

Api\ProductAttributeRepositoryInterface

Repository

This interface defines the contract for managing product attributes in Magento 2. Developers use it to retrieve, create, update, and delete product at...

Api\ProductAttributeTypesListInterface

Interface

This interface defines a contract for retrieving a list of available product attribute types in Magento 2. Developers would use this when they need to...

Api\ProductCustomOptionRepositoryInterface

Repository

This repository interface manages custom product options in Magento 2's catalog system. Developers use it to retrieve, create, update, delete, and dup...

Api\ProductCustomOptionTypeListInterface

Interface

This interface defines a contract for retrieving all available custom option types that can be used with products in Magento. Developers would use thi...

Api\ProductLinkManagementInterface

Interface

This interface defines methods for managing product link relationships in Magento 2. Developers use it to retrieve and assign product links (such as r...

Api\ProductLinkRepositoryInterface

Repository

This interface defines methods for managing product links (relationships between products) such as related products, up-sells, and cross-sells. Develo...

Api\ProductLinkTypeListInterface

Interface

This interface defines a contract for retrieving product link types and their attributes in Magento 2. Developers use this to get information about av...

Api\ProductManagementInterface

Interface

This interface defines a contract for managing product-level operations in Magento 2, specifically for retrieving product counts. Developers use this...

Api\ProductMediaAttributeManagementInterface

Interface

This interface defines a contract for retrieving media image attributes associated with a specific product attribute set. Developers use this when the...

Api\ProductRenderListInterface

Interface

This interface defines a contract for retrieving comprehensive product render information including prices, names, stock status, and store details. De...

Api\ProductRepositoryInterface

Repository

This interface defines the contract for managing product data in Magento 2's catalog system. Developers use this repository to perform CRUD operations...

Api\ProductTierPriceManagementInterface

Interface

This interface defines the contract for managing tier pricing on products in Magento 2. Developers use this to programmatically add, remove, or retrie...

Api\ProductTypeListInterface

Interface

This interface defines a contract for retrieving all available product types in Magento 2 (such as simple, configurable, bundle, downloadable, etc.)....

Api\ProductWebsiteLinkRepositoryInterface

Repository

This repository interface manages the relationship between products and websites in a multi-website Magento setup. Developers use it to assign product...

Api\ScopedProductTierPriceManagementInterface

Interface

This interface defines operations for managing tier pricing on products within specific store scopes. Developers use this when they need to add, remov...

Api\SpecialPriceInterface

Interface

This interface defines the API contract for managing special prices on products in Magento 2. Developers use this to programmatically retrieve, update...

Api\SpecialPriceStorageInterface

Interface

This interface defines a specialized API for managing special prices (promotional/temporary prices) for products in Magento 2. Developers use this to...

Api\TierPriceStorageInterface

Interface

This interface defines operations for managing tier pricing (volume discounts) for products in Magento 2. Developers use it to programmatically retrie...

Attribute\Backend\AbstractLayoutUpdate

Model

This abstract backend model manages custom layout file selection for catalog entities (products/categories). Developers extend this class to validate...

Attribute\Backend\Consumer

Model

This class is a message queue consumer that processes asynchronous bulk operations for updating product attributes in Magento 2. Developers would use...

Attribute\Backend\ConsumerWebsiteAssign

Model

This class is a message queue consumer that handles asynchronous bulk operations for assigning or removing products from websites. When products need...

Attribute\Backend\Customlayoutupdate

Model

This backend model validates and manages the custom layout update attribute for catalog entities (products and categories). It enforces a security rul...

Attribute\Backend\DefaultBackend

Model

This class serves as the default backend model for catalog attributes in Magento 2, extending the base EAV backend functionality. Developers use it to...

Attribute\Backend\Startdate

Model

This backend model handles the 'special price from date' attribute for catalog products. It validates that the start date doesn't exceed the end date...

Attribute\Config

Model

This class provides a high-level interface to retrieve catalog attribute names organized by groups. Developers use it to get lists of attributes that...

Attribute\Config\Converter

Model

This converter class transforms XML configuration for catalog attributes into a PHP array format. Developers use this when working with catalog_attrib...

Attribute\Config\Data

Model

This class manages the configuration data for catalog attributes in Magento 2. It extends the framework's Config Data class to provide cached access t...

Attribute\Config\Reader

Model

This class reads and merges catalog attribute configuration from multiple catalog_attributes.xml files across Magento modules. Developers use this to...

Attribute\Config\SchemaLocator

Model

This class provides the location of the XSD schema file used to validate catalog attribute configuration XML files. Developers use this when working w...

Attribute\LockValidatorComposite

Model

This composite validator class manages multiple attribute lock validators and executes them in sequence to check if a catalog attribute can be modifie...

Attribute\ScopeOverriddenValue

Model

This class determines whether an attribute value has been overridden at a specific store view level versus using the default value. Developers use thi...

Attribute\Source\AbstractLayoutUpdate

Model

This abstract class provides layout update options for catalog entities (products, categories) in Magento 2. Developers extend this class to create cu...

Attribute\Source\Scopes

Model

This class provides a list of attribute scope options used in Magento 2's catalog system. Developers use this when configuring product attributes to d...

Catalog

Helper

This helper class manages custom attribute tab block names for product and category edit forms in the Magento admin panel. Developers use it to custom...

Category

Model

The Category model represents a product category in Magento 2's catalog system. Developers use this class to retrieve, create, update, and manage cate...

Category

Helper

This helper class provides utility methods for working with Magento 2 categories. Developers use it to retrieve store categories, generate category UR...

CategoryAttributeSearchResults

Model

This class serves as a data container for returning search results when querying category attributes through Magento's API. Developers use this class...

CategoryLink

Model

This class represents the relationship between a product and a category in Magento 2, storing the category ID and the product's position within that c...

CategoryLinkManagement

Model

This class manages the relationship between products and categories in Magento 2. Developers use it to retrieve which products are assigned to a speci...

CategoryLinkRepository

Model

This class manages the relationship between products and categories in Magento 2. Developers use it to programmatically assign products to categories...

CategoryList

Model

This class retrieves a list of categories based on search criteria and filtering requirements. Developers use it when they need to fetch multiple cate...

CategoryManagement

Model

This class manages category tree operations in Magento 2, providing functionality to retrieve category hierarchies, move categories to different paren...

CategoryProductLink

Model

This class represents the relationship between a product and a category in Magento 2, storing the product's SKU, its position within the category, and...

CategoryRepository

Model

This repository class provides a centralized interface for managing Magento 2 categories through CRUD operations (create, read, update, delete). Devel...

CategoryRepository\PopulateWithValues

Model

This class populates a category entity with its attribute values and handles store-specific vs default values. It's used internally by the CategoryRep...

CategorySearchResults

Model

This class serves as a Data Transfer Object (DTO) that holds the results of category search operations in Magento 2. Developers use this when working...

Category\Attribute

Model

This class represents a category attribute in Magento 2's catalog system, providing getters and setters for attribute properties like visibility, sear...

Category\AttributeRepository

Model

This class manages category attribute operations in Magento 2's catalog system. Developers use it to retrieve category attributes by code, get filtere...

Category\Attribute\LayoutUpdateManager

Model

This class manages custom layout updates for category pages in Magento 2. Developers use it to fetch available layout update files for a specific cate...

Category\Attribute\OptionManagement

Model

This class manages attribute options for category attributes in Magento 2. Developers use it to retrieve available options for dropdown and multi-sele...

Category\Authorization

Model

This class enforces authorization rules when saving categories, specifically preventing unauthorized users from modifying design-related attributes li...

Category\DataProvider

Model

This class provides data and metadata for the Magento 2 category form in the admin panel. Developers use it when customizing the category edit form, a...

Category\FileInfo

Model

This class provides file information and path management utilities for category-related media files in Magento 2. Developers use it to verify file exi...

Category\Image

Model

This service class resolves and returns the full URL for category images in Magento 2. Developers use it to get the complete media URL for a category'...

Category\LayoutCacheTagResolver

Model

This class resolves cache tags that need to be invalidated when a category's page layout is changed. It ensures that widget instances associated with...

Category\Link\ReadHandler

Model

This read handler loads category assignment data for products and attaches it to the product entity as extension attributes. It retrieves all category...

Category\Link\SaveHandler

Model

This class handles saving category assignments for products in Magento 2. It processes both extension attributes (category links with positions) and d...

Category\Product\PositionResolver

Model

This class retrieves product position information within a specific category. Developers use it to get ordered product positions or find the minimum p...

Category\StoreCategories

Model

This class retrieves all category IDs associated with a specific store group by fetching the root category and its children. Developers use it when th...

Category\Tree

Model

This class retrieves and manages category data in a hierarchical tree structure for Magento's catalog system. Developers use it to get the category tr...

CompareList

Model

This class represents a customer's product compare list in Magento 2. Developers use this model to interact with compare list data, such as retrieving...

CompareListIdToMaskedListId

Model

This class retrieves the masked (hashed) ID of a product compare list given its numeric database ID. Developers use this when working with GraphQL or...

Config

Model

This class manages catalog configuration data in Magento 2, providing access to product attributes, attribute sets, attribute groups, and product type...

Config\Backend\Category

Model

This backend model handles the saving of catalog category root configuration settings in Magento's system configuration. When a store's root category...

Config\CatalogMediaConfig

Model

This class manages configuration settings for catalog media URLs in Magento 2. Developers use it to retrieve the URL format for catalog images, which...

Config\LayerCategoryConfig

Model

This class provides configuration settings for controlling whether the category filter appears in Magento's layered navigation (filtering sidebar). De...

Config\Source\Category

Model

This class provides a source model for category dropdown options in Magento's admin configuration forms. It's used when you need to populate a select...

Config\Source\GridPerPage

Model

This class provides configuration options for the number of products displayed per page in grid view on the catalog frontend. Developers use it as a s...

Config\Source\LayoutList

Model

This class provides a list of available layout options for default product and category layouts in Magento's admin configuration. Developers use this...

Config\Source\ListMode

Model

This class provides configuration options for product list display modes in catalog pages. Developers use it in system configuration settings to allow...

Config\Source\ListPerPage

Model

This class provides pagination options for product listing pages in Magento 2's catalog. Developers use it as a source model in system configuration t...

Config\Source\ListSort

Model

This class provides a list of available sorting options for product listing pages in Magento 2. It's used in admin configuration settings to populate...

Config\Source\TimeFormat

Model

This class provides time format options for configuration settings in the Magento Catalog module. Developers use it as a source model in system.xml co...

CustomOptions\CustomOption

Model

This class represents a custom option value for a product in Magento 2, typically used when adding products to cart or orders. Developers use this to...

CustomOptions\CustomOptionProcessor

Model

This class processes custom product options for cart items in Magento 2. It converts custom options between the buy request format (used when adding t...

Data

Helper

This helper class provides core catalog functionality including breadcrumb path generation, retrieving current category/product from registry, tax cal...

DefaultCategory

Helper

This helper class provides access to Magento's default root category ID, which is hardcoded as 2. Developers use this when they need to reference the...

Design

Model

This class manages custom design and layout settings for catalog products and categories in Magento 2. Developers use it to apply custom themes, extra...

Entity\Attribute

Model

This class extends Magento's base EAV attribute model specifically for catalog entities (products, categories). Developers use this when working with...

FilterProductCustomAttribute

Model

This class filters out specific product custom attributes that should not be processed or displayed. Developers use it to exclude certain attribute co...

FrontendStorageConfigurationPool

Model

This class manages a pool of frontend storage configurations that provide dynamic settings (like store configurations) to the frontend. Developers use...

Helper\Product\Configuration\ConfigurationInterface

Interface

This interface defines the contract for helpers that retrieve and format product configuration options (like custom options, configurable product sele...

Image

Helper

This helper class provides a fluent interface for generating and manipulating product images in Magento 2. Developers use it to create resized, waterm...

ImageExtractor

Model

This class extracts image configuration data from XML DOM structures, specifically from view.xml configuration files. Developers use this when Magento...

ImageUploader

Model

The ImageUploader class handles uploading and managing catalog images in Magento 2. Developers use this class to upload images to temporary directorie...

Indexer\AbstractFlatState

Model

This abstract class provides a foundation for checking the availability and enabled state of Magento's flat indexer functionality (used for product an...

Indexer\Category\Flat

Model

This class manages the Category Flat indexer in Magento 2, which creates and maintains flattened category tables for improved frontend performance. De...

Indexer\Category\Product

Model

This indexer maintains the relationship between categories and their assigned products in Magento 2. Developers interact with this class when products...

Indexer\Product\Category

Model

This indexer maintains the relationship between products and categories in Magento 2. It rebuilds or updates the catalog_product_category index table...

Indexer\Product\Eav

Model

This class manages the indexing of product EAV (Entity-Attribute-Value) attributes in Magento 2. Developers interact with this indexer when product at...

Indexer\Product\Flat

Model

This indexer manages the product flat table functionality in Magento 2, which creates denormalized tables to improve product data retrieval performanc...

Indexer\Product\Full

Model

This class serves as a coordinator for reindexing multiple product-related indexes in Magento 2. It executes full reindexing, list-based reindexing, o...

Indexer\Product\Price

Model

This class manages product price indexing in Magento 2, responsible for updating the price index tables that enable fast price filtering and sorting o...

Layer

Model

The Layer class manages product collections and filtering for catalog browsing in Magento 2. Developers use this when working with category pages, lay...

Layer\Category

Model

This class represents the catalog layer for category pages in Magento 2. It serves as a concrete implementation of the abstract Layer class specifical...

Layer\Category\AvailabilityFlag

Model

This class determines whether the layered navigation (filtering options) should be displayed on category pages. Developers use this to check if filter...

Layer\Category\CollectionFilter

Model

This class filters and prepares product collections for category pages by adding necessary attributes, pricing information, and visibility restriction...

Layer\Category\FilterableAttributeList

Model

This class retrieves a collection of product attributes that can be used as filters in catalog category layered navigation. Developers use this to get...

Layer\Category\ItemCollectionProvider

Model

This class provides the product collection for a specific category in Magento's layered navigation system. Developers use this when working with catal...

Layer\Category\StateKey

Model

This class generates unique cache keys for catalog category layers based on store, category, and customer group. Developers use this to ensure proper...

Layer\Context

Model

This class serves as a dependency injection container for the Catalog Layer model, bundling together related dependencies like collection providers, s...

Layer\FilterList

Model

This class manages and creates layered navigation filters for catalog product listings in Magento 2. Developers use it to retrieve the collection of f...

Layer\Filter\AbstractFilter

Model

This abstract base class provides core functionality for layered navigation filters in Magento 2 catalog pages. Developers extend this class to create...

Layer\Filter\Attribute

Model

This class handles attribute-based filtering in Magento's layered navigation. Developers use it to filter product collections by dropdown or swatch at...

Layer\Filter\Category

Model

This class implements the category filter for Magento 2's layered navigation. Developers use this to enable customers to filter product listings by ca...

Layer\Filter\Decimal

Model

This class implements a layered navigation filter for decimal product attributes in Magento 2's catalog. Developers use this to create range-based fil...

Layer\Filter\Item

Model

This class represents a single filter option item in Magento's layered navigation (e.g., a specific color or price range). Developers use it to genera...

Layer\Filter\Price

Model

This class implements the price range filter functionality for Magento 2 product listings and layered navigation. Developers use this class to apply p...

Layer\Resolver

Model

This class manages the creation and retrieval of catalog layer instances in Magento 2, which are used for filtering and displaying products in categor...

Layer\Search

Model

This class represents the layered navigation (filtering) layer specifically for search results pages in Magento 2. Developers use this class when impl...

Layer\Search\CollectionFilter

Model

This class filters and configures product collections specifically for search results pages. Developers use it to ensure search results only display p...

Layer\Search\FilterableAttributeList

Model

This class retrieves product attributes that can be used as filters in search results layered navigation. It extends the category filterable attribute...

Layer\Search\ItemCollectionProvider

Model

This class provides product collections specifically for search result pages in Magento 2. It implements the ItemCollectionProviderInterface and creat...

Layer\State

Model

This class manages the state of layered navigation (filtering) in Magento's catalog browsing. Developers use it to track which filters are currently a...

Layout\DepersonalizePlugin

Model

This plugin clears catalog session data when page cache depersonalization is needed. It runs after layout generation to remove customer-specific catal...

Locator\RegistryLocator

Model

This locator class retrieves the current product and store from Magento's registry. Developers use it when building product-related UI components or f...

MaskedListIdToCompareListId

Model

This class converts a masked compare list ID (public identifier) into an actual compare list ID (internal database ID). Developers use this when handl...

Model\Attribute\LockValidatorInterface

Interface

This interface defines a contract for validators that check if a catalog attribute is locked and can be modified. Developers implement this interface...

Model\Config\Source\ProductPriceOptionsInterface

Interface

This interface defines constants for product price option types in Magento 2, specifically 'fixed' and 'percent' values. Developers use this interface...

Model\EntityInterface

Interface

This interface defines a contract for catalog entities that require a unique entity identifier. Developers implement this interface on catalog-related...

Model\Factory

Factory

This is a factory class that creates instances of Catalog module models dynamically. Developers use it when they need to instantiate different model c...

Model\FrontendStorageConfigurationInterface

Interface

This interface defines a contract for providing configuration data to frontend JavaScript storage mechanisms in Magento 2 catalog functionality. Devel...

Model\Layer\AvailabilityFlagInterface

Interface

This interface defines a contract for determining whether filters are enabled in a Magento catalog layer. Developers implement this interface to creat...

Model\Layer\CollectionFilterInterface

Interface

This interface defines a contract for filtering product collections based on category context in Magento's catalog layer. Developers implement this in...

Model\Layer\ContextInterface

Interface

This interface defines a context object for the Catalog Layer model, providing access to collection providers, state keys, and collection filters. Dev...

Model\Layer\Filter\Factory

Factory

This factory class creates instances of catalog layer filter objects (like price filters, attribute filters) used in product listing pages. Developers...

Model\Layer\Filter\FilterInterface

Interface

This interface defines the contract for layered navigation filters in Magento 2 catalog. Developers implement this interface when creating custom prod...

Model\Layer\FilterableAttributeListInterface

Interface

This interface defines a contract for retrieving a list of product attributes that can be used for filtering in catalog layers (like category or searc...

Model\Layer\ItemCollectionProviderInterface

Interface

This interface defines a contract for retrieving product collections based on a category in Magento's layered navigation system. Developers implement...

Model\Layer\StateKeyInterface

Interface

This interface defines a contract for generating unique state keys for catalog layers based on categories. Developers implement this interface to crea...

Model\Locator\LocatorInterface

Interface

This interface defines a contract for locating and accessing product-related context information in Magento 2. Developers use implementations of this...

Model\ProductIdLocatorInterface

Interface

This interface defines a contract for retrieving product IDs and types by their SKUs. Developers use implementations of this interface when they need...

Model\ProductLink\CollectionProviderInterface

Interface

This interface defines a contract for retrieving linked products associated with a given product in Magento 2. Developers implement this interface to...

Model\ProductLink\Converter\ConverterInterface

Interface

This interface defines a contract for converters that transform Magento Product objects into array representations. Developers implement this interfac...

Model\ProductLink\Data\ListCriteriaInterface

Interface

This interface defines the criteria for searching and filtering product links (related products, up-sells, cross-sells, etc.) in Magento 2. Developers...

Model\ProductLink\Data\ListResultInterface

Interface

This interface defines the contract for returning results when fetching a list of product links (related, upsell, cross-sell products). It provides a...

Model\ProductLink\MapProviderInterface

Interface

This interface defines a contract for providers that fetch product link data in Magento 2. Developers implement this interface to create custom provid...

Model\ProductOptionProcessorInterface

Interface

This interface defines methods for converting product configuration data between two formats: ProductOptionInterface objects and buy request DataObjec...

Model\ProductOptions\ConfigInterface

Interface

This interface defines a contract for accessing product option configurations in Magento 2. Developers implement this interface to retrieve specific p...

Model\ProductTypes\ConfigInterface

Interface

This interface defines the contract for accessing Magento 2 product type configurations. Developers use this to retrieve product type settings, check...

Model\Product\Attribute\AttributeSetUnassignValidatorInterface

Interface

This interface defines a contract for validators that check whether an attribute can be safely removed from a product attribute set. Developers implem...

Model\Product\CatalogPriceFactory

Factory

This factory class creates and validates custom catalog price models for external catalogs or third-party integrations. Developers use it when they ne...

Model\Product\CatalogPriceInterface

Interface

This interface defines methods for retrieving product catalog prices for external catalogs or third-party integrations. Developers implement this inte...

Model\Product\Condition\ConditionInterface

Interface

This interface defines a contract for applying filtering conditions to product collections in Magento 2. Developers implement this interface when crea...

Model\Product\CopyConstructorFactory

Factory

This factory class creates instances of product copy constructors that implement the CopyConstructorInterface. Developers use this when they need to d...

Model\Product\CopyConstructorInterface

Interface

This interface defines the contract for classes that handle product duplication logic in Magento 2. Developers implement this interface to create copy...

Model\Product\Gallery\ImagesConfigFactory

Factory

This factory class creates a collection of image configuration objects for product gallery images. Developers use this when they need to build a struc...

Model\Product\Gallery\ImagesConfigFactoryInterface

Interface

This factory interface defines a contract for creating a collection of gallery image configurations for products. Developers use this to generate stan...

Model\Product\Media\ConfigInterface

Interface

This interface defines the contract for managing product media file locations in Magento 2's catalog system. Developers use implementations of this in...

Model\Product\PriceModifierInterface

Interface

This interface defines a contract for classes that need to modify product prices in Magento 2. Developers implement this interface when creating custo...

Model\Product\Price\TierPriceFactory

Factory

This factory creates and manages tier price objects for products in Magento 2. Developers use this class to convert raw tier price data from the datab...

Model\ResourceModel\AbstractCollection

Collection

This abstract collection class provides a foundation for Magento 2 catalog collections (products, categories) that use flat tables instead of EAV stru...

Model\ResourceModel\Category\Collection

Collection

This collection class retrieves and manages groups of category entities from the database in Magento 2. Developers use it to load categories with vari...

Model\ResourceModel\Category\StateDependentCollectionFactory

Factory

This factory creates the appropriate category collection based on whether flat catalog indexing is enabled. It automatically returns either a flat col...

Model\ResourceModel\ProductFrontendAction\Collection

Collection

This collection class retrieves and manages ProductFrontendAction records from the database, which track customer/visitor interactions with products (...

Model\ResourceModel\Product\BaseSelectProcessorInterface

Interface

This interface defines a contract for processors that modify database SELECT queries for product collections. Developers implement this interface to a...

Model\ResourceModel\Product\Collection

Collection

This class manages collections of product entities in Magento 2, providing methods to filter, sort, and retrieve product data efficiently. Developers...

Model\ResourceModel\Product\LinkedProductSelectBuilderInterface

Interface

This interface defines a contract for building database SELECT queries to retrieve linked product information with minimal price data. Developers impl...

Model\Template\Filter\Factory

Factory

This factory class creates template filter instances for processing Magento catalog templates with dynamic variables and directives. Developers use it...

Output

Helper

This helper class processes and sanitizes catalog attribute output (product and category attributes) for safe display in the frontend. It handles HTML...

Product

Model

The Product model is the core class representing catalog products in Magento 2. Developers use it to load, save, and manipulate product data including...

Product

Helper

This helper class provides utility methods for working with products in Magento 2. Developers use it to retrieve product URLs, images, prices, check p...

ProductAttributeGroupRepository

Model

This repository class manages CRUD operations for product attribute groups in Magento 2. Developers use it to create, retrieve, update, or delete attr...

ProductAttributeSearchResults

Model

This class serves as a data transfer object (DTO) that contains search results for product attributes in Magento 2. It's used by repository methods to...

ProductCategoryList

Model

This class retrieves all category IDs that a specific product belongs to across all stores. Developers use this when they need to determine which cate...

ProductFrontendAction

Model

This model represents frontend user actions performed on products, such as views or recently viewed items. Developers use this class to track and stor...

ProductIdLocator

Model

This class efficiently retrieves product IDs and types by their SKUs. Developers use it when they need to look up multiple products by SKU in bulk ope...

ProductLink\Attribute

Model

This class represents an attribute of a product link relationship in Magento 2, such as attributes for related products, upsells, or cross-sells. Deve...

ProductLink\CollectionProvider

Model

This class retrieves and organizes linked products (related, cross-sells, upsells) for one or more products in Magento 2. Developers use it to get col...

ProductLink\CollectionProvider\Crosssell

Model

This class retrieves cross-sell products linked to a given product. Developers use this when they need to display product recommendations that complem...

ProductLink\CollectionProvider\LinkedMapProvider

Model

This class retrieves and manages product link relationships (cross-sell, up-sell, and related products) for multiple products at once. Developers use...

ProductLink\CollectionProvider\Related

Model

This class provides a standardized way to retrieve related products for a given product in Magento 2. Developers use this when they need to fetch prod...

ProductLink\CollectionProvider\Upsell

Model

This class provides a standardized way to retrieve upsell products linked to a given product. Developers use this when they need to fetch products tha...

ProductLink\Converter\ConverterPool

Model

This class manages a pool of product link converters and provides the appropriate converter based on the product link type (e.g., related, upsell, cro...

ProductLink\Converter\DefaultConverter

Model

This class converts a Magento product object into a standardized array format containing basic product link information (type, SKU, and position). Dev...

ProductLink\Data\ListCriteria

Model

This class serves as a data transfer object (DTO) that encapsulates search criteria for retrieving product links (related products, up-sells, cross-se...

ProductLink\Data\ListResult

Model

This class serves as a data transfer object (DTO) that encapsulates the result of product link list operations. Developers use it to handle both succe...

ProductLink\Link

Model

This class represents a product link relationship in Magento 2, such as related products, up-sells, or cross-sells. Developers use this model to progr...

ProductLink\Management

Model

This class manages product link relationships (related, upsell, cross-sell) through Magento's API. Developers use it to programmatically retrieve or s...

ProductLink\ProductLinkQuery

Model

This class retrieves product links (related products, up-sells, cross-sells, etc.) in bulk based on specified criteria. Developers use it when they ne...

ProductLink\Repository

Model

This repository class manages product link relationships in Magento 2, such as related products, up-sells, and cross-sells. Developers use it to progr...

ProductLink\Search

Model

This class provides product search functionality for linking products in the catalog. Developers use it to retrieve a filtered collection of products...

ProductLink\Type

Model

This class represents a product link type in Magento 2, defining the relationship types between products (such as related products, up-sells, or cross...

ProductManagement

Model

This class provides product management functionality, specifically counting products in the catalog. Developers use it to retrieve the total number of...

ProductNotFoundPageCacheTags

Model

This class ensures that when a product page results in a 404 error (noroute page), the cached 404 page is tagged with that product's cache identities....

ProductOption

Model

This class represents product options in the cart or order context, providing a standardized way to handle custom options, configurable attributes, or...

ProductOptionProcessor

Model

This class converts product custom options between two formats: from API data structures (ProductOptionInterface) to buy request objects used when add...

ProductOptions\Config

Model

This class provides access to product options configuration in Magento 2. Developers use it to retrieve configuration data for specific product option...

ProductOptions\Config\Converter

Model

This converter class transforms XML configuration for product options into a PHP array structure. Developers use this when defining custom product opt...

ProductOptions\Config\Reader

Model

This class reads and parses product_options.xml configuration files from Magento modules to define custom product option types and their input types....

ProductOptions\Config\SchemaLocator

Model

This class provides the file paths to XSD schema files used to validate product options configuration in Magento 2. It implements SchemaLocatorInterfa...

ProductOptions\TypeList

Model

This class provides a list of available custom option types that can be used when creating product options in Magento. Developers use this to retrieve...

ProductRender

Model

This class serves as a Data Transfer Object (DTO) that encapsulates all the information needed to render a product on the frontend, including buttons...

ProductRenderInfoSearchResults

Model

This class represents a collection of product render information results returned from search operations. Developers use this when retrieving multiple...

ProductRenderList

Model

This class retrieves and prepares product rendering information needed to display products on the frontend. It fetches product data based on search cr...

ProductRender\Button

Model

This class represents a button (typically 'Add to Cart') in product rendering contexts, such as product listings or catalog widgets. It stores button-...

ProductRender\FormattedPriceInfo

Model

This model stores formatted price information for product rendering in the frontend, including final prices, regular prices, special prices, and min/m...

ProductRender\FormattedPriceInfoBuilder

Model

This builder class converts numeric price values from a PriceInfoInterface object into formatted HTML price strings using the store's currency format....

ProductRender\Image

Model

This model represents product image data for rendering purposes in Magento 2. Developers use this class when working with product rendering APIs to st...

ProductRender\PriceInfo

Model

This class serves as a data container for product pricing information used in product rendering operations. Developers use this model to store and ret...

ProductRepository

Model

ProductRepository is the central service for managing product data in Magento 2. Developers use it to retrieve, save, delete, and search for products...

ProductRepository\MediaGalleryProcessor

Model

This class handles the processing of product media gallery entries before saving a product through the ProductRepository. Developers use this when wor...

ProductSearchResults

Model

This class serves as a data container for product search results returned by repository methods in Magento 2. Developers use this when implementing pr...

ProductType

Model

This class represents a product type entity in Magento 2's catalog system. Developers use it to access or set product type information such as the typ...

ProductTypeList

Model

This class retrieves and provides a list of all available product types in Magento (simple, configurable, bundle, etc.). Developers use it when they n...

ProductTypes\Config

Model

This class provides access to product type configurations in Magento 2, allowing developers to retrieve information about different product types (sim...

ProductTypes\Config\Converter

Model

This class converts product type configuration XML data into an array format that Magento can use internally. Developers use this when defining custom...

ProductTypes\Config\Reader

Model

This class reads and parses product_types.xml configuration files from Magento modules to load product type definitions. It defines how different prod...

ProductTypes\Config\SchemaLocator

Model

This class provides the file paths to XSD schema files used for validating product types configuration in Magento 2. Developers would use this when wo...

ProductVisibilityCondition

Model

This class applies visibility filtering to product collections, ensuring only products visible in the catalog are included. Developers use this to aut...

ProductWebsiteLink

Model

This class represents the relationship between a product and a website in Magento's multi-website setup. Developers use it to manage which products ar...

ProductWebsiteLinkRepository

Model

This repository manages the assignment of products to websites in a multi-website Magento 2 setup. Developers use this class to programmatically assig...

Product\Action

Model

This class handles mass/bulk updates to product attributes and website assignments. Developers use it when they need to update multiple products at on...

Product\AttributeSet\Build

Model

This builder class creates new EAV attribute sets for product entities in Magento 2. It validates that an attribute set with the given name doesn't al...

Product\AttributeSet\Options

Model

This class provides a list of available product attribute sets as an options array, typically used to populate dropdown fields in admin forms or grids...

Product\AttributeSet\SuggestedSet

Model

This model provides attribute set suggestions for products based on partial name matches. Developers use this class when implementing auto-complete or...

Product\Attribute\AttributeSetFinder

Model

This class finds and retrieves unique attribute set IDs associated with a given list of product IDs. Developers use this when they need to determine w...

Product\Attribute\AttributeSetUnassignValidator

Model

This class validates whether a product attribute can be unassigned from an attribute set. Developers use this validator before removing an attribute f...

Product\Attribute\DataProvider

Model

This data provider class supplies form metadata and configuration for the product attribute creation/editing UI in Magento 2's admin panel. It customi...

Product\Attribute\DefaultAttributes

Model

This class provides a list of default static attributes that every product entity must have in Magento 2. Developers would use this when they need to...

Product\Attribute\Group

Model

This class manages product attribute groups in Magento 2, which organize product attributes into logical sections on the product edit form. Developers...

Product\Attribute\IsFilterableManagement

Model

This class manages the filterable status of product attributes in Magento 2, controlling whether attributes can be used in layered navigation. Develop...

Product\Attribute\LayoutUpdateManager

Model

This class manages custom layout updates for product pages in Magento 2. Developers use it to fetch available layout XML files for specific products a...

Product\Attribute\Management

Model

This class manages product attribute assignments to attribute sets and groups in Magento 2. Developers use it to programmatically assign or unassign a...

Product\Attribute\OptionManagement

Model

This class manages options for product attributes (like color, size, etc.) in Magento 2. Developers use it to programmatically add, retrieve, update,...

Product\Attribute\Repository

Model

This class manages product attributes in Magento 2, providing methods to retrieve, create, update, and delete product attributes. Developers use this...

Product\Attribute\SetManagement

Model

This class manages the creation of product attribute sets in Magento 2. Developers use this service to programmatically create new attribute sets base...

Product\Attribute\SetRepository

Model

This repository class manages CRUD operations for product attribute sets in Magento 2. Developers use it to retrieve, create, update, or delete attrib...

Product\Attribute\Type

Model

This class represents a product attribute type data model in Magento 2's catalog system. Developers use it to work with attribute type information, sp...

Product\Attribute\TypesList

Model

This class retrieves a list of available product attribute input types (text, dropdown, date, etc.) in Magento 2. Developers use this class when build...

Product\Authorization

Model

This class provides authorization checks for product save operations, specifically protecting design-related attributes (custom layouts, design themes...

Product\CartConfiguration

Model

This class determines whether a product has been properly configured with required options before being added to the cart. Developers use it to valida...

Product\CatalogPrice

Model

This class acts as a facade for retrieving catalog prices for different product types in Magento 2. It delegates price calculations to specific price...

Product\Compare

Helper

This helper class manages product comparison functionality in Magento 2, allowing customers to add, remove, and compare products side-by-side. Develop...

Product\Compare\Item

Model

This class manages individual items in a customer's product comparison list in Magento 2. Developers use it to add/remove products from compare lists,...

Product\Compare\ListCompare

Model

This class manages the product comparison feature in Magento 2, allowing customers to add, remove, and view products in their comparison list. Develop...

Product\Composite

Helper

This helper class manages the rendering of product configuration interfaces in the admin area, particularly for composite products (configurable, bund...

Product\Condition

Model

This class represents a condition for filtering product collections based on a join table and primary key field. Developers use it to apply conditiona...

Product\Configuration

Helper

This helper class retrieves and formats product configuration options for configurable items like cart items, order items, or quote items. Developers...

Product\ConfigurationPool

Helper

This helper class manages a pool of product configuration helpers for different product types in Magento 2. Developers use it to retrieve the appropri...

Product\Copier

Model

This class handles the creation of product duplicates in Magento 2. Developers use this class when implementing features that need to copy existing pr...

Product\CopyConstructor\Composite

Model

This class orchestrates the product duplication process in Magento 2 by applying multiple copy constructors in sequence. Developers use it when duplic...

Product\CopyConstructor\CrossSell

Model

This class handles the copying of cross-sell product links when duplicating a product in Magento. It extracts all cross-sell relationships from the or...

Product\CopyConstructor\Related

Model

This class handles copying related product links when duplicating a product in Magento 2. When a product is duplicated, this copy constructor ensures...

Product\CopyConstructor\UpSell

Model

This class is responsible for copying up-sell product links when duplicating a product in Magento 2. When a product is duplicated, this copy construct...

Product\Edit\WeightResolver

Model

This class determines whether a product has physical weight or not, which is important for shipping calculations and product type handling. Developers...

Product\Exception

Model

This is a specialized exception class for product-related errors in Magento's Catalog module. Developers should throw this exception when encountering...

Product\Filter\DateTime

Model

This filter class converts datetime values from locale-specific or MySQL formats into Magento's internal datetime format. Developers use it when proce...

Product\Flat\Indexer

Helper

This helper class manages the structure and creation of Magento 2's flat product index tables. Developers use it when working with product flat indexi...

Product\Gallery\CopyHandler

Model

This class handles copying media gallery images and data from one product to another during product duplication operations. Developers use this when p...

Product\Gallery\CreateHandler

Model

This class handles the creation and management of product gallery images in Magento 2's catalog system. Developers use this when products are saved to...

Product\Gallery\DeleteHandler

Model

This class handles the deletion of all media gallery images and related database records when a product is deleted from the catalog. Developers use th...

Product\Gallery\DeleteValidator

Model

This class validates whether a product gallery image can be safely deleted by checking if it's assigned to image roles (base, small, thumbnail, swatch...

Product\Gallery\Entry

Model

This class represents a single media gallery entry (image or video) for a product in Magento 2. Developers use it to manage product media attributes l...

Product\Gallery\EntryResolver

Model

This class resolves mappings between product media gallery entry IDs and their file paths. Developers use it to look up a gallery image's file path wh...

Product\Gallery\GalleryManagement

Model

This class manages product media gallery operations through Magento's API. Developers use it to programmatically create, update, retrieve, or delete p...

Product\Gallery\MimeTypeExtensionMap

Model

This class provides a mapping utility that converts image MIME types to their corresponding file extensions for product gallery images. Developers use...

Product\Gallery\Processor

Model

This class handles all operations related to product image galleries in Magento 2. Developers use it to programmatically add, update, remove, or retri...

Product\Gallery\ReadHandler

Model

This class loads and attaches media gallery images to product entities when they are retrieved from the database. Developers use this as part of Magen...

Product\Gallery\UpdateHandler

Model

This class handles updating product gallery images when a product is saved in Magento 2. It manages the lifecycle of product images including removing...

Product\Hydrator

Model

This class handles the conversion of product entity objects to/from arrays in Magento 2. Developers use this when working with the Entity Manager fram...

Product\Image

Model

This class handles product image manipulation operations in Magento 2's catalog module. Developers use it to resize, rotate, crop, and add watermarks...

Product\Image\Cache

Model

This class is responsible for pre-generating and caching product image variations (thumbnails, different sizes) based on theme configurations defined...

Product\Image\ConvertImageMiscParamsToReadableFormat

Model

This class converts product image configuration parameters into human-readable string format for use in cache keys or file naming. Developers use it w...

Product\Image\NotLoadInfoImageException

Model

This is a custom exception class used specifically when product image information fails to load in Magento's catalog system. Developers catch this exc...

Product\Image\ParamsBuilder

Model

This class builds configuration parameters for product images in Magento 2, including dimensions, watermarks, quality settings, and display options li...

Product\Image\RemoveDeletedImagesFromCache

Model

This class removes deleted product images from Magento's image cache directories. When product images are deleted from the catalog, this service clean...

Product\Image\UrlBuilder

Model

This class generates URLs for product images based on the image file path and display area (e.g., 'product_page_image_small', 'category_page_grid'). D...

Product\LayoutCacheTagResolver

Model

This class resolves cache tags for product page layouts to ensure proper cache invalidation when a product's page layout changes. It implements Magent...

Product\Link

Model

This class manages product relationships in Magento 2, including related products, up-sells, and cross-sells. Developers use it to programmatically li...

Product\LinkTypeProvider

Model

This class manages and provides information about product link types in Magento 2 (such as related products, up-sells, and cross-sells). Developers us...

Product\Link\Converter

Model

This class converts product link information into a grouped array structure, organizing links by their type (related, upsell, cross-sell, associated)....

Product\Link\Resolver

Model

This class retrieves and manages product link data (related, upsell, cross-sell products) during product operations. It serves as a central resolver t...

Product\Link\SaveHandler

Model

This class handles saving product link associations (related products, up-sells, cross-sells) when a product is saved. Developers would use this as pa...

Product\Media\AttributeManagement

Model

This class manages media attributes for product attribute sets in Magento 2. Developers use it to retrieve a list of all media image attributes (like...

Product\Media\Config

Model

This class provides configuration and path/URL generation methods for product media files in Magento 2. Developers use it to get filesystem paths and...

Product\Option

Model

This class manages product custom options in Magento 2, allowing products to have configurable fields like text inputs, file uploads, dropdowns, and d...

Product\Option\Converter

Model

This converter class transforms product custom option objects into array format. Developers use this when they need to serialize product options (like...

Product\Option\ReadHandler

Model

This read handler is responsible for loading and attaching custom product options to a product entity during the product retrieval process. It's autom...

Product\Option\Repository

Model

This repository class manages product custom options (like size, color, personalization fields) in Magento 2. Developers use it to retrieve, save, del...

Product\Option\SaveHandler

Model

This class handles the saving of custom product options when a product entity is saved. Developers use this as part of Magento's extension attributes...

Product\Option\Type

Model

This class represents a product custom option type definition in Magento's catalog system. Developers use it to define and manage the structure of opt...

Product\Option\UrlBuilder

Model

This class is a utility builder for generating frontend URLs related to product options in Magento's catalog system. Developers use this when they nee...

Product\Option\Value

Model

This class represents a single value option for customizable product options (like dropdown choices, radio buttons, or checkboxes). Developers use it...

Product\PriceModifier

Model

This class handles modifications to product tier pricing in Magento 2, specifically removing tier prices for products. Developers use this when they n...

Product\PriceModifier\Composite

Model

This class implements the Composite design pattern to orchestrate multiple price modification operations on products. Developers use this to allow dif...

Product\Price\BasePrice

Model

This class serves as a Data Transfer Object (DTO) for product base price information in Magento 2. Developers use it to encapsulate and transfer produ...

Product\Price\BasePriceStorage

Model

This class manages base product prices in Magento 2, providing functionality to retrieve and update prices for products. Developers use this class whe...

Product\Price\Cost

Model

This class serves as a Data Transfer Object (DTO) for product cost information in Magento 2. Developers use it when working with product cost data acr...

Product\Price\CostStorage

Model

This class manages product cost storage operations in Magento 2, providing functionality to retrieve, update, and delete product cost values. Develope...

Product\Price\PricePersistence

Model

PricePersistence handles database operations for product prices in Magento 2. Developers use this class when they need to programmatically retrieve, u...

Product\Price\PriceUpdateResult

Model

This class represents the result of a product price update operation in Magento 2. Developers use it to store and retrieve feedback messages and param...

Product\Price\SpecialPrice

Model

This model class encapsulates special pricing data for products in Magento 2. Developers use it to programmatically manage time-limited promotional pr...

Product\Price\SpecialPriceStorage

Model

This class manages special price operations for Magento products, providing efficient API methods to retrieve, update, and delete special prices (sale...

Product\Price\TierPrice

Model

This class represents a Tier Price Data Transfer Object (DTO) for product pricing in Magento 2. Developers use this class to work with tier pricing da...

Product\Price\TierPricePersistence

Model

This class handles database operations for product tier prices in Magento 2. Developers use it to retrieve, create, update, replace, or delete tier pr...

Product\Price\TierPriceStorage

Model

This class manages tier pricing data for products in Magento 2, providing methods to retrieve, create, update, and delete bulk tier prices by product...

Product\ProductFrontendAction\Synchronizer

Model

This class synchronizes product frontend actions (like recently viewed or compared products) between the browser and Magento's database. Developers us...

Product\ProductList

Helper

This helper class provides configuration and default values for product list toolbars, specifically handling view modes (grid/list), sorting options,...

Product\ProductList\Toolbar

Model

This class extracts and manages product list toolbar parameters from HTTP requests, including sorting order/direction, display mode, items per page li...

Product\ProductList\ToolbarMemorizer

Model

This class manages the persistence of product list toolbar settings (sort order, direction, display mode, and items per page) in the customer's sessio...

Product\ReservedAttributeCheckerAdapter

Model

This adapter class wraps the ReservedAttributeList to implement the ReservedAttributeCheckerInterface, ensuring backward compatibility while following...

Product\ReservedAttributeList

Model

This class maintains a list of reserved attribute codes that cannot be used for custom user-defined product attributes in Magento 2. It automatically...

Product\ScopedTierPriceManagement

Model

This class manages tier pricing (volume discounts) for products within specific store scopes in Magento 2. Developers use it to programmatically add,...

Product\TierPrice

Model

This class represents a tier pricing model for products in Magento 2. Developers use it to manage quantity-based discounts where customers get differe...

Product\TierPriceManagement

Model

This class manages tier pricing for products in Magento 2, allowing developers to programmatically add, remove, and retrieve volume-based discounts fo...

Product\Type

Model

This class serves as a factory and registry for all product types in Magento 2 (simple, bundle, virtual, etc.). Developers use it to get product type...

Product\TypeTransitionManager

Model

This class manages the transition of products between compatible product types during editing. It automatically converts products between Simple and V...

Product\Type\AbstractType

Model

This is the abstract base class for all product types in Magento 2 (Simple, Configurable, Bundle, etc.). Developers extend this class when creating cu...

Product\Type\FrontSpecialPrice

Model

This deprecated class handles the calculation and retrieval of special prices for products on the storefront. It extends the base Price model and retr...

Product\Type\Pool

Model

This class acts as a factory pool for creating product type instances in Magento 2. Developers use it to retrieve specific product type objects (simpl...

Product\Type\Price

Model

This class handles product pricing calculations in Magento 2, including base prices, tier prices, special prices, and final prices. Developers use thi...

Product\Type\Simple

Model

This class represents the Simple product type in Magento 2, which is the most basic and commonly used product type. Developers use this class as a fou...

Product\Type\Virtual

Model

This class implements the Virtual product type in Magento 2, representing products that don't have physical presence like downloadable services, warra...

Product\Url

Model

This class handles the generation and formatting of product URLs in Magento 2. Developers use it to get product URLs for different stores, apply URL r...

Product\Validator

Model

This validator class acts as a wrapper for product validation in Magento 2. Developers would use this class when they need to validate product data du...

Product\View

Helper

This helper class handles the initialization and rendering of product detail pages in Magento 2. Developers use it to set up product view layouts, app...

Product\Visibility

Model

This class manages product visibility settings in Magento 2, controlling where products appear (catalog, search, both, or not visible individually). D...

Product\Webapi\ProductOutputProcessor

Model

This class processes product output for Web API responses by removing empty arrays for tier_prices and product_links that weren't included in the orig...

Product\Website

Model

This model class manages the relationship between products and websites in a multi-website Magento installation. Developers use it to assign products...

Product\Website\ReadHandler

Model

This class loads and attaches website IDs to a product's extension attributes during product read operations. It's automatically invoked by Magento's...

Product\Website\SaveHandler

Model

This class handles saving product-to-website associations during product save operations in Magento's entity management system. Developers use this ex...

ResourceModel\AbstractResource

Model

This abstract class serves as the base resource model for Magento 2 catalog entities (products, categories). It handles store-specific attribute loadi...

ResourceModel\Attribute

Model

This resource model manages catalog attribute persistence and deletion operations in Magento 2. Developers use this class when working with product or...

ResourceModel\AttributePersistor

Model

This class handles the persistence (saving, updating, deleting) of catalog product attributes to the database, specifically managing website-scoped an...

ResourceModel\Attribute\ConditionBuilder

Model

This class builds database query conditions for catalog attribute operations when attributes have website scope. Developers use it internally when Mag...

ResourceModel\Attribute\RemoveProductAttributeData

Model

This class handles the deletion of product attribute values from the database when an attribute is removed from a specific attribute set. Developers w...

ResourceModel\Attribute\WebsiteAttributesSynchronizer

Model

This class synchronizes website-scoped product and category attribute values across different store views within the same website. Developers use it t...

ResourceModel\CatalogCategoryAndProductResolverOnSingleStoreMode

Model

This class handles the migration of catalog category and product attribute data when switching from multi-store to single store mode in Magento 2. It...

ResourceModel\Category

Model

This is the core resource model for managing category data in Magento 2's database. Developers use it to perform CRUD operations on categories, manage...

ResourceModel\CategoryProduct

Model

This resource model manages the database operations for the catalog_category_product table, which stores the many-to-many relationship between product...

ResourceModel\Category\AggregateCount

Model

This class handles the aggregation of category counts when a category is deleted in Magento 2. It automatically updates the children_count field for a...

ResourceModel\Category\Flat

Model

This class manages Magento 2's flat category table structure, which provides optimized read performance for category operations. Developers use this r...

ResourceModel\Category\Tree

Model

This class manages the hierarchical tree structure of Magento categories, providing methods to load, organize, and manipulate category data with their...

ResourceModel\Config

Model

This resource model manages catalog configuration data, specifically retrieving product attribute information used in product listings and sorting. De...

ResourceModel\DuplicatedProductAttributesCopier

Model

This class is responsible for copying non-global product attributes from a source product to a target product during product duplication. It's automat...

ResourceModel\Eav\Attribute

Model

This class represents a catalog product attribute in Magento 2's EAV system. Developers use it to manage product attribute properties like scope (glob...

ResourceModel\GetProductTypeById

Model

This class retrieves a product's type ID (such as 'simple', 'configurable', 'virtual', etc.) by its product ID through direct database access. Develop...

ResourceModel\Helper

Model

This class serves as a database resource helper specifically for Catalog module operations, extending the EAV resource helper functionality. Developer...

ResourceModel\Indexer\ActiveTableSwitcher

Model

This class manages the switching of database index tables between active and replica versions in Magento 2. Developers use this during index operation...

ResourceModel\MaxHeapTableSizeProcessor

Model

This class manages MySQL's max_heap_table_size session variable, which controls the maximum size for in-memory temporary tables. Developers would use...

ResourceModel\MediaImageDeleteProcessor

Model

This class handles the deletion of product images from both the database and filesystem when a product is deleted. It ensures images are only physical...

ResourceModel\Product

Model

This is the main resource model for Magento 2 products, handling all database operations for product entities including CRUD operations, attribute man...

ResourceModel\ProductFrontendAction

Model

This resource model manages database operations for tracking customer frontend actions related to products, such as recently viewed products or produc...

ResourceModel\ProductWebsiteAssignmentHandler

Model

This class handles the assignment of products to websites in Magento's multi-website setup. Developers use this handler during product save operations...

ResourceModel\Product\Action

Model

This class handles mass updating of product attributes for multiple products at once in Magento 2. Developers use this when they need to efficiently u...

ResourceModel\Product\CategoryLink

Model

This resource model manages the relationships between products and categories in Magento 2. Developers use this class to retrieve, save, update, or de...

ResourceModel\Product\CompositeBaseSelectProcessor

Model

This class acts as a composite processor that orchestrates multiple base select processors for product queries. Developers use this to apply a chain o...

ResourceModel\Product\Flat

Model

This resource model manages interactions with Magento's flat product tables, which are denormalized versions of product data optimized for frontend pe...

ResourceModel\Product\Gallery

Model

This resource model manages product media gallery database operations in Magento 2. Developers use it to load, insert, update, and delete product imag...

ResourceModel\Product\GetCategories

Model

This class retrieves all category IDs associated with a given list of product IDs across all stores. Developers use this when they need to find which...

ResourceModel\Product\Image

Model

This resource model retrieves product image information from the database, including both all available images and only those actively used in the cat...

ResourceModel\Product\Link

Model

This resource model manages product link relationships in the database, such as related products, up-sells, and cross-sells. Developers use this class...

ResourceModel\Product\LinkedProductSelectBuilderByBasePrice

Model

This class builds database select queries to retrieve the child product with the lowest base price from a parent product's linked/related products (li...

ResourceModel\Product\LinkedProductSelectBuilderBySpecialPrice

Model

This class builds database select queries to retrieve linked child products that have active special prices within the current date range. Developers...

ResourceModel\Product\LinkedProductSelectBuilderByTierPrice

Model

This class builds database SELECT queries to retrieve child products based on their tier pricing. Developers use this when they need to find the best-...

ResourceModel\Product\LinkedProductSelectBuilderComposite

Model

This class acts as a composite builder that collects and merges SELECT queries from multiple linked product builders. It's used when retrieving relate...

ResourceModel\Product\MediaGalleryValue

Model

This class manages store-specific media gallery values for product images in Magento 2. Developers use it to retrieve all gallery entries for a produc...

ResourceModel\Product\Option

Model

This resource model manages database operations for product custom options in Magento 2, including saving, deleting, and duplicating option prices and...

ResourceModel\Product\Relation

Model

This resource model manages parent-child relationships between products in Magento 2, primarily used for configurable, grouped, and bundle products. D...

ResourceModel\Product\StatusBaseSelectProcessor

Model

This class filters product queries to only include enabled products by joining the status attribute tables and adding a WHERE condition. Developers us...

ResourceModel\Product\Website

Model

This resource model manages the relationship between products and websites in a multi-website Magento installation. Developers use this class to assig...

ResourceModel\Url

Model

This resource model handles database operations for catalog URL rewrites in Magento 2. Developers use this class to retrieve product and category data...

Rss\Category

Model

This model provides RSS feed functionality for Magento catalog categories. Developers use it to retrieve a collection of products from a specific cate...

Rss\Product\NewProducts

Model

This class retrieves a filtered collection of new products for RSS feed generation. Developers use it to get products marked as 'new' based on their n...

Rss\Product\NotifyStock

Model

This class generates RSS feeds for low stock product notifications in Magento 2. Developers use it to retrieve a collection of products that are runni...

Rss\Product\Special

Model

This class retrieves a collection of products that have special prices (discounted products where final price is less than regular price) for RSS feed...

Session

Model

This class manages catalog-specific session data in Magento 2, such as recently viewed products, comparison lists, and other catalog-related temporary...

Template\Filter

Model

This filter class processes template directives in catalog-related content, converting special syntax like {{view}}, {{media}}, and {{store}} into act...

Theme\CustomerData\MessagesProvider

Model

This class provides session messages to the customer data section system in Magento 2, specifically for catalog-related operations. It determines whet...

View\Asset\Image

Model

This class represents a product image asset in Magento 2's catalog system, managing image URLs and file paths for different image types (thumbnail, sm...

View\Asset\Placeholder

Model

This class manages placeholder images for product catalog items when actual product images are missing or unavailable. Developers would use this when...

Widget\RecentlyComparedStorageConfiguration

Model

This class provides configuration settings for the Recently Compared Products widget's frontend storage. Developers use it to retrieve the lifetime du...

Widget\RecentlyViewedStorageConfiguration

Model

This class provides configuration for frontend storage of recently viewed products widgets in Magento 2. Developers use it to retrieve the lifetime se...