The MDVA-32634 Magento patch solves the issue where the url_path of the catalog category does not change after moving the category in the hierarchy. This patch is available when the Quality Patches Tool (QPT) 1.0.16 is installed. Please note that the issue is scheduled to be fixed in Magento 2.4.3.
Affected products and versions
The patch is created for Magento version: Magento Commerce Cloud 2.3.4-p2
Compatible with Magento versions: Magento Commerce and Commerce Cloud 2.3.1-2.4.1
Note: the patch might become applicable to other versions with new QPT tool releases. To check if the patch is compatible with your Magento version, run
./vendor/bin/magento-patches status .
Moving a catalog category in the hierarchy results in an incorrect url_path. The url_path of the category assigned to the default store scope [ id:0 ] remains unchanged after moving the category in the hierarchy. Steps to reproduce:
- Log in to the Magento admin. Create the following category structure under the root category:move-cat sub-move-cat sub-move-cat2new-cat-move
- Verify category [ url_path ] attribute [ id: 120 ] for value assignment in [ catalog_category_entity_varchar ] table using the following query:
sql SELECT * FROM catalog_category_entity_varchar WHERE attribute_id = 120 ORDER BY value_id DESC LIMIT 4;It should give you the following result:
sql MariaDB [m24dev]> SELECT * FROM catalog_category_entity_varchar WHERE attribute_id = 120 ORDER BY value_id DESC LIMIT 4;[ url_path ] values were generated and assigned to All Store scope [ 0 ]. This is correct comparing to an instance without b2b.
- Go to backend category list, drag [ move-cat ], and drop it in to [ new-cat-move ]. Now the category should look like:new-cat-move move-cat sub-move-cat sub-move-cat2
- Check the [ catalog_category_entity_varchar ] table using the following query:
sql SELECT * FROM catalog_category_entity_varchar WHERE attribute_id = 120 ORDER BY value_id DESC LIMIT 16;
Actual result: The url_path assigned to all store scope [ 0 ] remains unchanged even though there is no such path available after the move. Also, it has new url_path values created for each store.
Expected result: The url_path assigned to all store scope [ 0 ] should also update with the new path.
Apply the patch
For instructions on how to apply an QPT patch, use the following links depending on your Magento product:
- Magento Commerce: DevDocs Apply patches using Quality Patches Tool .
- Magento Commerce Cloud: DevDocs Upgrades and Patches > Apply patches .
To learn more about Quality Patches Tool, refer to:
- Quality Patches Tool released: a new tool to self-serve quality patches .
- Check if patch is available for your Magento issue using Quality Patches Tool .
For info about other patches available in QPT tool, refer to the Patches available in QPT tool section.