The Universal Commerce Protocol (UCP) is a new standard designed to let external systems and AI agents interact with online stores. For Magento merchants, one point is particularly important: this is not primarily about building your own AI agent. It…
Critical PHP Vulnerabilities CVE-2026-109618 and CVE-2026-109619: Securing Magento Stores Running PHP Below 8 (Magento 1 / 2)
On October 21, 2026, two critical PHP vulnerabilities were disclosed. This is particularly troublesome for operators of older Magento stores still running PHP 5.6, PHP 7.4 or another unsupported PHP version. A simple PHP upgrade is often impossible without updating…
Finding Product URL Rewrites with SQL (Magento 2)
When product URLs behave unexpectedly, a direct look at Magento’s url_rewritetable can be useful. It stores public-facing paths, internal targets and redirects for product URLs. Use the following query to display URL rewrites for a specific SKU:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
SELECT p.sku, u.store_id, s.code AS store_code, s.name AS store_name, u.request_path, u.target_path, u.redirect_type FROM url_rewrite AS u JOIN catalog_product_entity AS p ON u.entity_id = p.entity_id LEFT JOIN store AS s ON s.store_id = u.store_id WHERE u.entity_type = 'product' AND p.sku = 'MEINE-SKU' ORDER BY u.store_id, u.request_path; |
request_path contains…
Finding Direct ObjectManager Usage in Code (Magento 2)
In older extensions or inherited Magento code, you may find direct calls to the ObjectManager. A regular expression makes it easy to search for those calls throughout the codebase.
|
1 |
grep -RInP 'ObjectManager\s*::\s*getInstance\s*\(' app/code |
For example, the search may find:
|
1 2 3 4 5 |
$objectManager = \Magento\Framework\App\ObjectManager::getInstance(); $productRepository = $objectManager->get( \Magento\Catalog\Api\ProductRepositoryInterface::class ); |
The regular expression…
Checking Whether setup:upgrade Is Required (Magento 2)
After a module upgrade or deployment, people often run setup:upgrade as a precaution. But you can check whether any database schema or data upgrades are pending before doing so. Run the following command:
|
1 |
bin/magento setup:db:status |
Magento compares the database state with…
Finding Out Which Extensions Are Enabled (Magento 2)
For Magento 2 installations with many extensions, it is not always obvious which modules are enabled. A simple CLI command shows the current status of all modules:
|
1 |
bin/magento module:status |
Magento groups the output into List of enabled modules and List of…
Checking Indexer Status via CLI (Magento 2)
Checking Magento 2 indexer status is one of the first steps when troubleshooting many issues. Magento’s CLI shows which indexes are current, which require reindexing and where there may be problems.
|
1 |
bin/magento indexer:status |
If an indexer reports Reindex required, you can…
Finding the Largest Database Tables Using SQL (Magento 2)
A Magento database can grow large over time. Before you investigate or delete individual tables, identify which tables consume the most space. The following SQL query lists the 20 largest tables, including data size, index size and total size:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 |
SELECT TABLE_NAME AS Table_Name, TABLE_ROWS AS Rows_Estimated, ROUND(DATA_LENGTH / 1024 / 1024, 2) AS Data_MB, ROUND(INDEX_LENGTH / 1024 / 1024, 2) AS Index_MB, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024, 2) AS Total_MB, ROUND(DATA_LENGTH / 1024 / 1024 / 1024, 3) AS Data_GB, ROUND(INDEX_LENGTH / 1024 / 1024 / 1024, 3) AS Index_GB, ROUND((DATA_LENGTH + INDEX_LENGTH) / 1024 / 1024 / 1024, 3) AS Total_GB FROM information_schema.TABLES WHERE TABLE_SCHEMA = 'YOUR_MAGENTO_DATABASE' ORDER BY (DATA_LENGTH + INDEX_LENGTH) DESC LIMIT 20; |
…
Flush Magento Cache vs. Flush Cache Storage: What’s the Difference?
In Magento admin under System → Cache Management you will find two buttons that appear to do almost the same thing: Flush Magento Cache and Flush Cache Storage. The difference is simpler than their names suggest. Flush Magento Cache roughly…
Enabling Maintenance Mode and Allowing Your Own IP Address (Magento 2)
During upgrades or major changes, you may want to block visitors temporarily while continuing to work on the store yourself. Magento 2 can enable maintenance mode and exempt selected IP addresses. Enable maintenance mode and allow your own IP address…