Quick Help

Knowledgebase is a categorized collection of answers to frequently asked questions (FAQ) and articles. You can read articles in this category or select a subcategory that you are interested in.

 How to resolve issue Could not save product with position to category? How to regenerate url rewrites in products and categories of magento 2 totally?


Its best solution!!! working ok, tested on magento 2.3.5-p1


bin/magento regenerate:product:url



How to resolve issue Could not save product with position to category?

Instruction how to resolve issue in magento 2 when not possible to cahnge category in edit product mode and in category when open Product in category section.


download this extension:




install it and run full product url regeneration:


bin/magento ok:urlrewrites:regenerate


working ok way:

1. in ssh in mysql run ( keep in mind this is only for experts who know what they do -- will remove all your links and rewrite urls ):

use databse;


TRUNCATE TABLE url_rewrite; 



2. us this https://github.com/olegkoval/magento2-regenerate_url_rewrites

run bin/magento ok:urlrewrites:regenerate --entity-type=category

run bin/magento ok:urlrewrites:regenerate

3. clean & flush cach & clean redis or other extra cache

4. use https://github.com/cadencelabs/urldedup

run bin/magento cadence:urldedup:categories

run bin/magento cadence:urldedup:products

read here https://www.cadence-labs.com/2017/11/magento-2-fix-duplicate-url-key-for-categories-and-products/

5. use https://github.com/elgentos/regenerate-catalog-urls





clear & flush all types of caches

run cron

wait for some time while all backend proccesses will be completed approx. 30 monites

DONE - all rewrite 


DELETE FROM url_rewrite WHERE entity_type='product' AND is_autogenerated='1';

The regenerated URLs still contain old url keys

This is most likely caused by faulty import data. Steps to fix it: - Backup your database - Remove old

category paths (url keys will be preserved) by running this query: DELETE FROM

catalog_category_entity_varchar WHERE attribute_id = ( SELECT attribute_id FROM

`eav_attribute` WHERE `attribute_code` = 'url_path' AND `entity_type_id` = '3' ) -

Remove old product paths by running this query: DELETE FROM catalog_product_entity_varchar

WHERE attribute_id = ( SELECT attribute_id FROM `eav_attribute` WHERE

`attribute_code` = 'url_path' AND `entity_type_id` = '4' )

Was this article helpful? yes / no

Article details

Article ID: 28

Category: Magento 2

Date added: 2020-05-23 06:37:53

Views : 470

Rating (Votes): Article rated 5.0/5.0 (2)

Powered by Help Desk Software HESK, in partnership with SysAid Technologies