magento-catalog
Work with Magento 2 catalog — product types, categories, attributes, indexing, and search integration. Use when building catalog features, customizing product types, or working with the catalog architecture.
Best use case
magento-catalog is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Work with Magento 2 catalog — product types, categories, attributes, indexing, and search integration. Use when building catalog features, customizing product types, or working with the catalog architecture.
Teams using magento-catalog should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/magento-catalog/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How magento-catalog Compares
| Feature / Agent | magento-catalog | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Work with Magento 2 catalog — product types, categories, attributes, indexing, and search integration. Use when building catalog features, customizing product types, or working with the catalog architecture.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Magento 2 Catalog & Product Types ## Before writing code **Fetch live docs**: 1. Web-search `site:developer.adobe.com commerce php development components catalog` for catalog development 2. Web-search `site:developer.adobe.com commerce php development components indexing` for indexer guide 3. Fetch `https://developer.adobe.com/commerce/php/development/components/indexing/` for indexing architecture ## Product Types ### Six Built-in Types | Type | Description | Key Characteristics | |------|-------------|-------------------| | **Simple** | Single physical item | Unique SKU, own stock, no variations | | **Configurable** | Parent with variant children | Children are simple products, vary by attributes (size, color) | | **Grouped** | Collection of products | Simple/virtual children, purchased independently | | **Bundle** | Customer-assembled set | Options with selectable items, dynamic/fixed pricing | | **Virtual** | Non-physical (services) | No shipping, no weight | | **Downloadable** | Digital products | Files/links, optional samples | ### Configurable Products The most complex type — a parent product with simple product children: - Super attributes determine variations (e.g., color, size) - Each combination maps to a child simple product with its own SKU and stock - Frontend: dropdown selectors, price updates, image swapping - Key tables: `catalog_product_super_attribute`, `catalog_product_super_link` ### Custom Product Types Possible to create custom types by: - Extending `Magento\Catalog\Model\Product\Type\AbstractType` - Registering in `etc/product_types.xml` - Defining custom price model, stock handling, and checkout behavior ## Categories ### Category Tree - Hierarchical structure with root categories and subcategories - Each store view has one root category - Categories use EAV for attributes - URL rewrites generate SEO-friendly paths - Display modes: products only, CMS block only, both ### Category Attributes - `name`, `description`, `image`, `meta_title`, `meta_description` - `is_active`, `include_in_menu`, `display_mode` - `url_key`, `url_path` - Custom attributes addable via data patches ## Indexing ### Why Indexing Exists EAV queries are expensive. Indexers pre-compute denormalized data for fast reads. ### Standard Indexers - `catalog_product_price` — pre-computed product prices - `catalogsearch_fulltext` — search engine index (OpenSearch/Elasticsearch) - `catalog_product_attribute` — filterable attributes for layered navigation - `cataloginventory_stock` — stock status - `catalogrule_product` — catalog price rules - `catalog_category_product` — category-product associations ### Index Modes | Mode | Behavior | Use Case | |------|----------|----------| | **Update on Save** | Reindexes immediately on data change | Small catalogs, development | | **Update by Schedule** | Cron-based, uses changelog tables | Production (recommended) | ### Mview (Materialized Views) Changelog tables (`*_cl`) track changes via database triggers. Cron compares versions in `mview_state` to determine what needs reindexing. Efficient — only processes changed entities. ### CLI Commands ```bash bin/magento indexer:reindex # Reindex all bin/magento indexer:reindex catalogsearch_fulltext # Reindex specific bin/magento indexer:status # Show status bin/magento indexer:set-mode schedule # Set all to schedule mode ``` ## Search Integration - A search engine has been required since 2.4.0 (originally Elasticsearch; OpenSearch supported from 2.4.6; only OpenSearch from 2.4.8) - Products, categories indexed for search and layered navigation - Elasticsearch removed in 2.4.8 - Custom search attributes configurable per attribute ## Best Practices - Use "Update by Schedule" indexing in production - Design catalog structure before adding products — attribute sets are hard to change later - Use configurable products for variant-heavy catalogs - Keep EAV attribute count reasonable — more attributes = slower indexing - Test catalog operations at scale (1000+ products) to catch performance issues - Use the repository pattern (`ProductRepositoryInterface`) for programmatic product access Fetch the catalog and indexing docs for exact indexer configuration, product type XML schema, and search integration patterns before implementing.
Related Skills
woo-catalog
Work with WooCommerce catalog — product types, categories, tags, attributes, product queries, search, related products, and product visibility. Use when managing products programmatically or customizing the catalog display.
spree-catalog
Build and customize Spree's catalog — Products with Variants and OptionTypes/OptionValues, Taxonomies and Taxons (nested set), Properties, Images via ActiveStorage, multi-currency Prices, the v5.3+ PriceList feature for customer/segment overrides, MeiliSearch faceted search (v5.4+), product archiving/activation, CSV import/export, and SEO. Use when modeling products, customizing the catalog UI, indexing search, or importing inventory.
shopify-catalog
Manage Shopify catalog — Product, Variant, and Option models, collections, metafields and metaobjects, inventory management, product taxonomy, bulk operations, and media. Use when working with Shopify product data.
sf-catalog
Manage Salesforce Commerce catalogs — B2C (Business Manager catalogs, categories, products, pricing books, promotions, search indexes) and B2B (Product2, Pricebook2, PricebookEntry, volume discounts, entitlements). Use when working with product data across either platform.
saleor-catalog
Manage the Saleor catalog — products, variants, product types, categories, collections, media, and warehouse stock. Use when working with Saleor product data.
medusa-catalog
Manage the Medusa v2 catalog — products, variants, options, collections, categories, tags, and product metadata. Use when working with Medusa product data.
magento-testing
Write tests for Magento 2 — PHPUnit unit tests, integration tests, MFTF functional tests, and API tests. Use when implementing test coverage for modules, debugging, or setting up CI/CD test pipelines.
magento-setup
Set up a Magento 2 Open Source project — installation, Composer setup, system requirements verification, and initial configuration. Use when starting a new Magento project or setting up a development environment.
magento-service-contracts
Implement Magento 2 service contracts — repository interfaces, data interfaces, SearchCriteria, and the repository pattern. Use when building module APIs, data access layers, or integrating with Magento's Web API.
magento-security
Implement Magento 2 security — CSP, 2FA, CSRF protection, ACL, admin security configuration, input validation, and security best practices. Use when hardening a Magento installation or reviewing security posture.
magento-plugins-interceptors
Implement Magento 2 plugins (interceptors) — before, after, and around methods for modifying class behavior without inheritance. Use when extending core or third-party module functionality.
magento-performance
Optimize Magento 2 performance — full page cache (Varnish), Redis, indexer tuning, JavaScript/CSS optimization, database optimization, and profiling. Use when diagnosing slow pages, optimizing load times, or configuring caching.