SITOLOG - F Bugnet Posted February 22, 2011 Share Posted February 22, 2011 Hi,Note for moderator: Not sure this is the right place to post such question, but do not know a better place. Please move this post if necessary.I'm adapting some modules I made, to be compatible with the coming V1.4. Using the category table, I found two new columns, called nleft and nright.Has no clue what this is for and meaning. Analysing the current values set for the Apple categories, did not find any logic.As I 'm working on a module capable of deleting/adding a category, need to know if I should take care of those parameters and what to put in.Help is welcome. ThanksFranck 1 Link to comment Share on other sites More sharing options...
oleg_ua Posted March 3, 2011 Share Posted March 3, 2011 I have same problem.Method Tools::getPath is using this two columns: SELECT id_category, level_depth, nleft, nright when creating breadcrumb. Link to comment Share on other sites More sharing options...
SITOLOG - F Bugnet Posted March 3, 2011 Author Share Posted March 3, 2011 Thanks for this beginning of answer .At least we know now this is the breadcrumb (fil d'ariane in French).But anyone as a clue about how to set or calculate these values? The default nleft values are 1 2 3 4 and the nright values 8 3 4 5 for the categories provided as example.what is this 8 meaning ? Link to comment Share on other sites More sharing options...
oleg_ua Posted March 3, 2011 Share Posted March 3, 2011 upd: my problem was that after import categories from OSC nleft and nright was set to 0. But when i create new category from admin this fields (nleft, nright) was recalculated for all categories. 1 Link to comment Share on other sites More sharing options...
pstesting Posted March 22, 2011 Share Posted March 22, 2011 Left and right values are used in nested set hierarchy model. You can search for more info, but in short every category has the smallest left and the largest right value than any of its subcategories. 1 Link to comment Share on other sites More sharing options...
spuhg5 Posted June 12, 2012 Share Posted June 12, 2012 (edited) Right, those values are used within the "nested set" hierarchy model which is the mysql organizational structure being used to organize categories and their relationships. Edited June 12, 2012 by spuhg5 (see edit history) Link to comment Share on other sites More sharing options...
Mr S Posted June 25, 2012 Share Posted June 25, 2012 Here is a small module you could use to Regenerate Category Tree for your shop (nleft, and nright values). I Only tested it with PrestaShop 1.4.6.2 regenerateCatTree.zip 2 Link to comment Share on other sites More sharing options...
InterAgilité Posted July 19, 2012 Share Posted July 19, 2012 Here is a small module you could use to Regenerate Category Tree for your shop (nleft, and nright values). I Only tested it with PrestaShop 1.4.6.2 regenerateCatTree.zip Hi, Thank your for your post, could you explain me how to use your tool ? Do i need to create a php file to call your tool ? ( object creation ? ) Thanks. Link to comment Share on other sites More sharing options...
Mr S Posted July 21, 2012 Share Posted July 21, 2012 To install the module by going to: Back Office > Modules > Add a module from my computer : Module file : Upload Than just run the module by going to "Configure" for this model You have to run it manually every time you need to fix any category tree errors 1 Link to comment Share on other sites More sharing options...
InterAgilité Posted July 21, 2012 Share Posted July 21, 2012 To install the module by going to: Back Office > Modules > Add a module from my computer : Module file : Upload Than just run the module by going to "Configure" for this model You have to run it manually every time you need to fix any category tree errors Thanks, in fact i already installed it .. and it seems to work fine. Thanks a lot for your module. Link to comment Share on other sites More sharing options...
TourisT Posted July 21, 2012 Share Posted July 21, 2012 works with prestashop 1.5.0.13 Link to comment Share on other sites More sharing options...
Deweb Posted July 30, 2012 Share Posted July 30, 2012 Thanks for the module. ;-) Works with prestashop 1.4.8 Link to comment Share on other sites More sharing options...
Tafou Posted September 6, 2012 Share Posted September 6, 2012 Yes, works like a charm with 1.5.0.13 Thanks a lot Link to comment Share on other sites More sharing options...
mousumihanpal Posted October 5, 2012 Share Posted October 5, 2012 I am working on Ximxii XML. They have multitreaded category to insert. I did that. But unable to insert nleft and nright . Please help me to insert that. Link to comment Share on other sites More sharing options...
jumprock Posted November 24, 2012 Share Posted November 24, 2012 (edited) please ignore - replied to wrong post. Edited November 24, 2012 by jumprock (see edit history) Link to comment Share on other sites More sharing options...
akaeu Posted February 2, 2013 Share Posted February 2, 2013 I have 1.5.2 with imported categories and also imported products with the default prestashop but it seems that on the product page the breadcrumb is not showing the full path. Is showing only Home and the product link. It doesn't matter if the product is directly on a category or subcategory. I tryed the module posted here and I regenerated the tree but still not working. Any othe sollutions ? 1 Link to comment Share on other sites More sharing options...
emcyze Posted July 19, 2013 Share Posted July 19, 2013 Hello, I'm facing the exact same issue as akaeu. Did you ever find a solution ? Thanks! Link to comment Share on other sites More sharing options...
Syclops Posted October 14, 2013 Share Posted October 14, 2013 I have a similar problem. Any chance we could get a Mod Update for 1.5.5 / 1.5.6 Thanks Link to comment Share on other sites More sharing options...
presta-rocks Posted October 14, 2013 Share Posted October 14, 2013 module from 1.5.5+ regenerateCatTree.zip 1 Link to comment Share on other sites More sharing options...
abehsera Posted October 15, 2013 Share Posted October 15, 2013 module from 1.5.5+ Can't upload this module Link to comment Share on other sites More sharing options...
Syclops Posted October 15, 2013 Share Posted October 15, 2013 module from 1.5.5+ I used this and it worked perfectly on 1.5.5. I just FTP'd the unzipped Folder up to the Modules Folder and Installed from Admin. 1 Link to comment Share on other sites More sharing options...
abehsera Posted October 15, 2013 Share Posted October 15, 2013 I used this and it worked perfectly on 1.5.5. I just FTP'd the unzipped Folder up to the Modules Folder and Installed from Admin. Tried several times but doesnt' work on my 1.5.6. Removed from the server and FTP'd back and installed from Admin, but still not working. It says it worked, but nothing happened to the table. Link to comment Share on other sites More sharing options...
Syclops Posted October 15, 2013 Share Posted October 15, 2013 Do you have any Cache Enabled? Try Disabling it and try again to see what happens. Link to comment Share on other sites More sharing options...
melriks Posted December 9, 2013 Share Posted December 9, 2013 Thanks. Works like a charm! Link to comment Share on other sites More sharing options...
davigo Posted March 28, 2014 Share Posted March 28, 2014 Thanks. In 1.6.0.5: Installing ok, but it seems to do nothing (no error, … message: done).I must migrate over 500 categories. I mapped the db tables from extern with sql but there are not correct functions in bo/fo. Greetings from Berlin Link to comment Share on other sites More sharing options...
RyderOne Posted April 6, 2014 Share Posted April 6, 2014 Hi everyone ! I was stuck on the same problem like abehsera (i'm on 1.5.6.2): Tried several times but doesnt' work on my 1.5.6. Removed from the server and FTP'd back and installed from Admin, but still not working. It says it worked, but nothing happened to the table. Same symptoms, same results ... I searched and found that the function regenerateEntireNtree() from class Category (classes/Category.php) has a condition (line 408 in my file) : if (isset($categories_array[0]) && $categories_array[0]['subcategories']) Category::_subTree($categories_array, $categories_array[0]['subcategories'][0], $n); but in database, my "root" category has id_parent = 1, not "0" (as expected in condition). I have changed manually in database this id_parent to 0 and relauch the module, and it worked. Hope this would work for you too ! Link to comment Share on other sites More sharing options...
mlp Posted April 22, 2014 Share Posted April 22, 2014 Hi ! Thanks for this great module I'm on 1.6.0.6 : it seems to work for the display in blockcategories but not in blocktopmenu Any idea ? Thanks in advance for your help Link to comment Share on other sites More sharing options...
Michal N. SEO Posted May 21, 2014 Share Posted May 21, 2014 module from 1.5.5+ Hi Marcinsz101 The modole create duplicate "way". Can You help? Link to comment Share on other sites More sharing options...
Sebs Posted June 21, 2014 Share Posted June 21, 2014 I'm on Prestashop 1.6.0.8 and I looking for a module to regeneretate my nleft and nright values. Link to comment Share on other sites More sharing options...
annichaotica Posted July 7, 2014 Share Posted July 7, 2014 me too, hating to do it by hand Link to comment Share on other sites More sharing options...
vekia Posted July 7, 2014 Share Posted July 7, 2014 I'm on Prestashop 1.6.0.8 and I looking for a module to regeneretate my nleft and nright values. nleft nright values are generated automatically while you adding categories. so if you will, for example, create temporarily "TEST" category, all nleft / nright values should be regenerated 1 Link to comment Share on other sites More sharing options...
annichaotica Posted July 7, 2014 Share Posted July 7, 2014 I tried this over and over again, deleting, creating, checking the database, but the nleft and nright values never changed. Also disabled caching, cleared the cache. Created categories for one shop only, created categories for all shops, neither action changed the nright,nleft values, always = 0.I would really appreciate any help you could give, since I know not what to do else. I'm using Prestashop 1.6.0.8, Multishop feature enabled, two live running shops. But unable to create new categories, alwas getting 404, and nleft/nright = 0. Link to comment Share on other sites More sharing options...
Sebs Posted July 7, 2014 Share Posted July 7, 2014 nleft nright values are generated automatically while you adding categories. so if you will, for example, create temporarily "TEST" category, all nleft / nright values should be regenerated NOT TRUE. My friend had to make me a php script to regenerate all of them on 1.6.0.8 The option to regenerate nleft and nright should be built in into the PrestaShop Cleaner module. 1 Link to comment Share on other sites More sharing options...
annichaotica Posted July 7, 2014 Share Posted July 7, 2014 werl, is it possible to share the script? much obliged Link to comment Share on other sites More sharing options...
Sebs Posted July 7, 2014 Share Posted July 7, 2014 werl, is it possible to share the script? much obliged The problem you currently have, I had it for more than two months. Nobody from Prestashop team's helped me. Where are those guys when you need to have these bugs fixed. Open Source... Give me a couple of minute, i send it to you via PM. 1 Link to comment Share on other sites More sharing options...
theo_56 Posted July 17, 2014 Share Posted July 17, 2014 Hi Sebs, I think i have the same problem, i import categories by csv and all nleft and nright = 0 Could you send me this script in mp? Thanks in advance! Link to comment Share on other sites More sharing options...
rv01 Posted July 19, 2014 Share Posted July 19, 2014 Hi, I have the same problem in 1.6.0.8 migrated from 1.4.3.7 Cannot create new category in the BO, but would like a way to do it manually in waiting for a solution, or to repair my values in the database (in production!!). Thanks to post this repairing script. Rene Link to comment Share on other sites More sharing options...
theo_56 Posted July 21, 2014 Share Posted July 21, 2014 I did it manually. For all categories : - nleft must be superior of the nleft parent - nright must be inferior of the nright parent For french people : http://www.dailymotion.com/video/xijw70_tutoriel-video-la-representation-intervallaire_lifestyle&start=344 Link to comment Share on other sites More sharing options...
SPKF Posted July 29, 2014 Share Posted July 29, 2014 Retour d'expérience: ce module fonctionne parfaitement avec une version de Prestashop 1.5.4. Link to comment Share on other sites More sharing options...
garcimore Posted March 23, 2015 Share Posted March 23, 2015 For update all your Categories, just do that : Category::regenerateEntireNtree(); 1 Link to comment Share on other sites More sharing options...
cedced Posted April 16, 2015 Share Posted April 16, 2015 I've tried to upload the module onto 1.6.0.13 but the import doesn't work through the admin nor via FTP. Do you place to update the module? @garcimore : how do you do that? Link to comment Share on other sites More sharing options...
stevent Posted April 20, 2015 Share Posted April 20, 2015 Bonjour à tous, Ce module ne fonctionne pas pour 1.6 et j'ai le même type de problèmes. Je ne parviens pas à afficher les url categories sans voir une erreur 404 Quelqu'un saurait m'aider svp?! Link to comment Share on other sites More sharing options...
Wibleo Posted June 4, 2015 Share Posted June 4, 2015 Bonjour à tous, Ce module ne fonctionne pas pour 1.6 et j'ai le même type de problèmes. Je ne parviens pas à afficher les url categories sans voir une erreur 404 Quelqu'un saurait m'aider svp?! Bonjour, Avez vous trouvé une solution par module ? Merci d'avance, j'ai exactement le même soucis après injection des catégories par CSV. Merci ! Link to comment Share on other sites More sharing options...
pepettego Posted June 20, 2015 Share Posted June 20, 2015 Est-ce que le module pour regénérer les catégories fonctionne sur la 1.6? Après un message de confirmation de téléchargement du module dans le back-office, le module n'apparait pas dans la liste des modules (même en le recherchant). Link to comment Share on other sites More sharing options...
Wibleo Posted June 20, 2015 Share Posted June 20, 2015 Est-ce que le module pour regénérer les catégories fonctionne sur la 1.6? Après un message de confirmation de téléchargement du module dans le back-office, le module n'apparait pas dans la liste des modules (même en le recherchant). Bonjour, Non malheureusement il n'est pas compatible avec la 1.6, pour ma part, j'ai été obligé de restaurer la base de donnée sur une sauvegarde de la veille pour corriger le soucis (mais ma boutique n'est pas encore en production). Link to comment Share on other sites More sharing options...
pepettego Posted June 21, 2015 Share Posted June 21, 2015 Merci pour ta réponse. Par contre cela veut-dire que je n'ai aucune solution, même faire qqchose à la main dans la base de données? J'avoue ne pas comprendre ce bug... Merci d'avoir pris le temps de me lire en tous cas. Link to comment Share on other sites More sharing options...
Wibleo Posted June 21, 2015 Share Posted June 21, 2015 Merci pour ta réponse. Par contre cela veut-dire que je n'ai aucune solution, même faire qqchose à la main dans la base de données? J'avoue ne pas comprendre ce bug... Merci d'avoir pris le temps de me lire en tous cas. Malheureusement je ne connais pas la manipulation, j'ai trouvé des choses avec google mais c'était trop technique pour essayer... Vois avec ton hébergeur si tu as une sauvegarde, sinon il ne te reste plus qu'à trouver les modifications en question à effectuer à la main. Bon courage Link to comment Share on other sites More sharing options...
Eolia Posted June 22, 2015 Share Posted June 22, 2015 Même si module il y avait, ce n'est pas magique. Le module ne peut savoir comment reconstruire si la table est trop en vrac. Plusieurs choses à savoir/comprendre : (Les explications sont données ici pour du mono-boutique) Vous devez avoir dans ps_category ces 2 premières lignes qui concernent la catégorie Root et Accueil. Root est invisible mais obligatoire. id_category id_parent id_shop_default level_depth nleft nright active date_add date_upd position is_root_category 1 0 1 0 1 22 1 2014-02-27 04:28:50 2014-02-27 04:28:50 0 0 2 1 1 1 2 21 1 2014-02-27 04:28:50 2014-02-27 04:28:50 0 1 root (id=1) doit avoir 0 en is_root_category. Accueil(id=2) DOIT être en 1 Si vous n'êtes pas sûr des noms des catégories, regardez dans ps_category_lang Vérifiez dans ps_configuration que l'id home est correct (PS_HOME_CATEGORY = 2) Vérifiez le également dans ps_shop (id_category = 2) Dessinez sur une feuille l'arbre de vos catégories avec leur nom et leur id (autrement vous allez vite être perdus^^) Il faut comprendre que les nleft et nright encadrent chaque catégorie, qu'ils sont uniques et se suivent sans trous ! Root encadre l'ensemble. Pour l'instant vous savez qu'elle démarre à 1. Comptez le nombre de lignes dans cette table et multipliez le par 2, vous aurez le nright max. Dans l'exemple ci-dessus la catégorie va de 1 à 22 La catégorie Accueil encadre également l'ensemble, juste après root Donc elle démarre à 2 à gauche et termine à 21 (dans l'exemple) Ensuite, et c'est là qu'on commence à s'amuser, il faut repérer les sous-catégories en différenciant celles qui ont également des sous-catégories. Exemple simple avec une sous-catégorie seule. (id=3, nom Test1) Cette catégorie va donc commencer à 3 en nleft et aller à 4 en nright (Elle s'encadre elle-même^^) avec 2 comme id_parent (Accueil pour ceux qui n'ont pas suivi) Ainsi de suite pour toutes les catégories simples. Pour une catégorie (id=4, nom Test2) avec sous-catégorie, on ne rempli pour l'instant que nleft. Le dernier n utilisé étant 4, ici nleft sera 5, son id_parent sera 2 (Accueil, toujours pour ceux qui n'ont pas suivi) 1ère sous-catégorie de cette catégorie: id_parent = 4 (logique) nleft = 6 et si pas de sous-catégorie, nright = 7 Idem pour les suivantes. Arrivés à la dernière, par exemple id= 8, id_parent=4, nleft = 12 et nright = 13 on peut donc connaitre le nright de la catégorie parente qui sera donc 14 (si vous avez suivi) Ainsi de suite pour toutes vos catégories/sous-catégories. le dernier nright doit correspondre à celui de l'accueil - 1 Certains vont me dire, surtout ceux qui suivent, que je n'ai rien dit concernant la colonne level_depth. Cette colonne correspond à la profondeur de la catégorie depuis root. Donc facile à remplir: Root profondeur = 0 Accueil = 1 Toutes les catégories de 1er niveau = 2 et ainsi de suite. Bon on a fait le principal mais il reste des choses à vérifier. Dans ps_category_lang, contrôler le nombre et les id des catégories et s'assurer qu'ils correspondent bien à ceux de ps_category. Dans ps_category_group vérifier que les catégories sont bien accessibles à chaque groupe client (sauf root qui a juste un groupe 0) Dans ps_category_shop vérifier que toutes vos catégories sont bien présentes pour l'id_shop 1 Dans ps_category_product, pas évident à contrôler comme ça, il suffira de vérifier pour chaque produit sa ou ses associations. Je ne vous ai pas parlé des positions, car c'est très simple à remettre en place dans votre BO par simple glisser/déposer^^ Voilà pour ceux qui voulaient comprendre le fonctionnement et éventuellement réparer leur tables. Faites ça au calme, avec un arbre dessiné comme expliqué plus haut et tout devrait rentrer dans l'ordre. Evidemment, si vous avez 5000 catégories ça ne va pas être une partie de plaisir... Personnellement, je commence par reconstruire les catégories principales, puis j'importe par série et je contrôle à chaque import. Bon courage 3 Link to comment Share on other sites More sharing options...
D4Y.be Posted September 3, 2015 Share Posted September 3, 2015 Bonjour , j'ai eu le même soucis. A chaque fois que je créé une nouvelle catégorie , celle ci m'indiquait une page 404. Dans la base de donnée le nlfet et nright était à 0 tout les deux. Le travail que proposait Eolia me semblait titanesque mais ca ma mit sur la piste pour trouver une procédure plus rapide. Je m'explique: Ouvrez votre base de donnée à la table ps_catergory. Affichez par 500 lignes pour plus de facilités et classez par nleft. Vous deviez avoir les nleft à la suite, vérifiez s'il y a des trous ou des duplicats . Avant de supprimer ou corriger , vérifiez l'id de la catégorie afin de déterminer de laquelle il s'agit. Moi personnellement j'ai trouvé comme ça. J'ai du supprimer une ligne et une catégorie qui n'existait pas en fait. Ensuite j'ai passé le Category Tree Regenerator et Nickel. J'espère que cela aidera qqun. 1 Link to comment Share on other sites More sharing options...
lunos Posted September 8, 2015 Share Posted September 8, 2015 thumps up guys, i understand nothing... 1 Link to comment Share on other sites More sharing options...
Eolia Posted September 8, 2015 Share Posted September 8, 2015 thumps up guys, i understand nothing... Look here : http://mikehillyer.com/articles/managing-hierarchical-data-in-mysql/ Link to comment Share on other sites More sharing options...
lunos Posted September 8, 2015 Share Posted September 8, 2015 Thanks Eolia! Link to comment Share on other sites More sharing options...
jfcas Posted September 22, 2015 Share Posted September 22, 2015 Très clair Merci Link to comment Share on other sites More sharing options...
lagouache Posted October 1, 2015 Share Posted October 1, 2015 En ce qui me concerne, j'ai essayé d'installer le module 1.5.5+ sur une version 1.6.0.6 par l'admin, mais le module n'apparait pas ensuite dans la liste des modules, et pour cause, le zip décompresse tous les fichiers du modules à la racine du répertoire "modules", alors que ces fichiers devraient être rangés dans un dossier "regenerateCatTree". Il faut donc charger le module manuellement, en versant les 4 fichiers dézippés dans un dossier "regenerateCatTree" que vous aurez créé dans le dossier modules. Ensuite, le module est bien apparu dans ma liste, et il a fonctionné pour moi, merci au dev ! Link to comment Share on other sites More sharing options...
AperoCD Posted October 1, 2015 Share Posted October 1, 2015 Great ideas. So the module simply runs Category::regenerateEntireNtree(); and looking through the site, this function is also run when a category is imported via csv AND from the PSCleaner "PrestaShop Cleaner" module under FUNCTIONAL INTEGRITY CONSTRAINTS Check & Fix. Link to comment Share on other sites More sharing options...
NappyNko Posted March 4, 2016 Share Posted March 4, 2016 Même si module il y avait, ce n'est pas magique. Le module ne peut savoir comment reconstruire si la table est trop en vrac. Plusieurs choses à savoir/comprendre : (Les explications sont données ici pour du mono-boutique) Vous devez avoir dans ps_category ces 2 premières lignes qui concernent la catégorie Root et Accueil. Root est invisible mais obligatoire. id_category id_parent id_shop_default level_depth nleft nright active date_add date_upd position is_root_category 1 0 1 0 1 22 1 2014-02-27 04:28:50 2014-02-27 04:28:50 0 0 2 1 1 1 2 21 1 2014-02-27 04:28:50 2014-02-27 04:28:50 0 1 root (id=1) doit avoir 0 en is_root_category. Accueil(id=2) DOIT être en 1 Si vous n'êtes pas sûr des noms des catégories, regardez dans ps_category_lang Vérifiez dans ps_configuration que l'id home est correct (PS_HOME_CATEGORY = 2) Vérifiez le également dans ps_shop (id_category = 2) Dessinez sur une feuille l'arbre de vos catégories avec leur nom et leur id (autrement vous allez vite être perdus^^) Il faut comprendre que les nleft et nright encadrent chaque catégorie, qu'ils sont uniques et se suivent sans trous ! Root encadre l'ensemble. Pour l'instant vous savez qu'elle démarre à 1. Comptez le nombre de lignes dans cette table et multipliez le par 2, vous aurez le nright max. Dans l'exemple ci-dessus la catégorie va de 1 à 22 La catégorie Accueil encadre également l'ensemble, juste après root Donc elle démarre à 2 à gauche et termine à 21 (dans l'exemple) Ensuite, et c'est là qu'on commence à s'amuser, il faut repérer les sous-catégories en différenciant celles qui ont également des sous-catégories. Exemple simple avec une sous-catégorie seule. (id=3, nom Test1) Cette catégorie va donc commencer à 3 en nleft et aller à 4 en nright (Elle s'encadre elle-même^^) avec 2 comme id_parent (Accueil pour ceux qui n'ont pas suivi) Ainsi de suite pour toutes les catégories simples. Pour une catégorie (id=4, nom Test2) avec sous-catégorie, on ne rempli pour l'instant que nleft. Le dernier n utilisé étant 4, ici nleft sera 5, son id_parent sera 2 (Accueil, toujours pour ceux qui n'ont pas suivi) 1ère sous-catégorie de cette catégorie: id_parent = 4 (logique) nleft = 6 et si pas de sous-catégorie, nright = 7 Idem pour les suivantes. Arrivés à la dernière, par exemple id= 8, id_parent=4, nleft = 12 et nright = 13 on peut donc connaitre le nright de la catégorie parente qui sera donc 14 (si vous avez suivi) Ainsi de suite pour toutes vos catégories/sous-catégories. le dernier nright doit correspondre à celui de l'accueil - 1 Certains vont me dire, surtout ceux qui suivent, que je n'ai rien dit concernant la colonne level_depth. Cette colonne correspond à la profondeur de la catégorie depuis root. Donc facile à remplir: Root profondeur = 0 Accueil = 1 Toutes les catégories de 1er niveau = 2 et ainsi de suite. Bon on a fait le principal mais il reste des choses à vérifier. Dans ps_category_lang, contrôler le nombre et les id des catégories et s'assurer qu'ils correspondent bien à ceux de ps_category. Dans ps_category_group vérifier que les catégories sont bien accessibles à chaque groupe client (sauf root qui a juste un groupe 0) Dans ps_category_shop vérifier que toutes vos catégories sont bien présentes pour l'id_shop 1 Dans ps_category_product, pas évident à contrôler comme ça, il suffira de vérifier pour chaque produit sa ou ses associations. Je ne vous ai pas parlé des positions, car c'est très simple à remettre en place dans votre BO par simple glisser/déposer^^ Voilà pour ceux qui voulaient comprendre le fonctionnement et éventuellement réparer leur tables. Faites ça au calme, avec un arbre dessiné comme expliqué plus haut et tout devrait rentrer dans l'ordre. Evidemment, si vous avez 5000 catégories ça ne va pas être une partie de plaisir... Personnellement, je commence par reconstruire les catégories principales, puis j'importe par série et je contrôle à chaque import. Bon courage Bonjour Merci beaucoup pour ce contenu ! Il se trouve que mon catalogue est complètement tronqué (mélangé) en front office et je pense qu'il s'agit d'un problème de catégorie. J'ai donc démarré votre processus mais mes catégories non pas de chiffres qui se suivent par ex je passe de 3 à 36 est ce que cela est un problème ou ne dois je regarder que les nleft ? Merci pour votre réponse Link to comment Share on other sites More sharing options...
Eolia Posted March 4, 2016 Share Posted March 4, 2016 les nleft doivent se suivre Une petite image pour comprendre les ensembles: https://en.wikipedia.org/wiki/Nested_set_model#/media/File:NestedSetModel.svg Link to comment Share on other sites More sharing options...
sly05 Posted March 18, 2016 Share Posted March 18, 2016 Super, merci pour le module, je l'ai installé sans soucis sur 1.6.0.5, par contre effectivement il faut faire un petit peu de préparation sur les catégories si ce n'est pas propre. Je lancé plusieurs fois pour que celà fonctionne totalement avec une arborescence en multiboutique (2 shop), et pour l'instant ça m'a l'air correct, les espaces entre les nleft et right sont bons, c'est super... et pourtant j'avais vraiment mis la bazard à la main.... Par contre si quelqu'un peut me valider que je suis dans le bon: j'ai 2 catégories root id=2 et id=4 'is_root_category' dont le parent est id=1 / level_deph 0 / position 1 ça fonctionne sauf que ces 2 catégories root que j'ai ajouté aprés n'ont aucun produit lié et apparaissent en tête de mon site map, ne peut on pas les empêcher d’apparaître? Sinon je veux bien la requête sql pour lier tout mes produits à cet id =2 Link to comment Share on other sites More sharing options...
obewanz Posted July 11, 2016 Share Posted July 11, 2016 Please respect the forum rules: English Please! 1 Link to comment Share on other sites More sharing options...
neoshop Posted October 3, 2016 Share Posted October 3, 2016 nleft nright values are generated automatically while you adding categories. so if you will, for example, create temporarily "TEST" category, all nleft / nright values should be regenerated works perfectly on 1.6.1.7 ... as we say in Auvergne : "il vaut mieux 1 qui sait que 100 qui cherchent" Link to comment Share on other sites More sharing options...
Highlypop Posted January 10, 2017 Share Posted January 10, 2017 I have the same problem but see category tree in product association but is incomplete. Some categories and if I create a new category don't show in BO. Help me please . This and more problems I solved is caused from upgrade Ps 1.4 to 1.6.? Link to comment Share on other sites More sharing options...
SITOLOG - F Bugnet Posted May 2, 2017 Author Share Posted May 2, 2017 Hi, I opened this topic years ago. I see it is still an issue for many people. Just wanted to mention that since my intitial question I invested lot of time to maste these nleft and nright parameter and that PrestaCategories is including for year a tool to repair broken categories trees, including the nested parameters. Has saved hundred of sites as of today. For moderator : sorry I know we are not in the right forum to talk about paid modules (this is why I do not include a link) , feel free to move to topic if required.. Rgds Franck Link to comment Share on other sites More sharing options...
kevinberben Posted October 31, 2017 Share Posted October 31, 2017 On 06/04/2014 at 9:50 AM, RyderOne said: Hi everyone ! I was stuck on the same problem like abehsera (i'm on 1.5.6.2): Same symptoms, same results ... I searched and found that the function regenerateEntireNtree() from class Category (classes/Category.php) has a condition (line 408 in my file) : if (isset($categories_array[0]) && $categories_array[0]['subcategories']) Category::_subTree($categories_array, $categories_array[0]['subcategories'][0], $n); but in database, my "root" category has id_parent = 1, not "0" (as expected in condition). I have changed manually in database this id_parent to 0 and relauch the module, and it worked. Hope this would work for you too ! You saved my life !!!! Link to comment Share on other sites More sharing options...
venusdsh Posted October 3, 2018 Share Posted October 3, 2018 Please speak in english. I understand nothing... 1 Link to comment Share on other sites More sharing options...
Bulldesign Posted October 23, 2021 Share Posted October 23, 2021 On 6/25/2012 at 8:35 AM, HA!*!*Y said: Here is a small module you could use to Regenerate Category Tree for your shop (nleft, and nright values). I Only tested it with PrestaShop 1.4.6.2 regenerateCatTree.zip 3.02 kB · 2,526 downloads Works on PS 1.7.8.0 aswell 👍 Link to comment Share on other sites More sharing options...
Kaizo Posted March 31, 2022 Share Posted March 31, 2022 On 10/23/2021 at 11:52 PM, Bulldesign said: Works on PS 1.7.8.0 aswell 👍 Can you reupload the module please? the link it's broken Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now