Bonjour,
Après un import de catégories, j'ai eu le même soucis : redirection vers des 404 alors que l'url des catégories étaient correctes.
Pour le corriger, il faut en effet mettre à jour les nleft et nright de chaque catégorie, et il y a une fonction prévue pour ça dans la classe Category.php : regenerateEntireNtree()
Voici comment procéder pour appeller cette fonction, pour les utilisateurs ne connaissant pas bien le PHP :
- éditez le fichier /controllers/front/IndexController.php (ou son override si celui-ci existe)
- juste avant la ligne "$this->setTemplate(_PS_THEME_DIR_.'index.tpl');", ajoutez ces 2 lignes :
$category_home = new Category(2); // 2 correspondant à la catégorie "Accueil" de votre site, changez cette valeur si votre catégorie "Accueil" a un id différent
$category_home->regenerateEntireNtree();
Ensuite enregistrez le fichier, puis il vous suffit d'aller sur la page d'accueil de votre site une fois pour appeller ce code. Une fois que cela est fait, testez d'aller sur une de vos catégories et cela devrait fonctionner.
IMPORTANT :
N'oubliez pas d'enlever les 2 lignes que vous venez d'ajouter au fichier IndexController.php, car sinon la fonction regenerateEntireNtree() sera appellée à chaque fois que quelqu'un est sur votre page d'accueil, donc cela ne fera que ralentir le site.