Bonjour,
Je n'arrive pas à faire prendre en compte les catégories multiples de mes articles importés en CSV, sur WooCommerce Wordpress.
Je crée moi-même le fichier CSV depuis une appli en C# (winform)
Tous les autres champs sont bien interprétés sauf "Categories_Ids".
Dans mon appli j'ai déjà créé un CSV pour "Market Place" de Facebook avec succès.
La documentation pour WooCommerce dit "Cat1, Cat1>SubCat1, Cat1>SubCat2" etc... pour le champ catégories_Ids du fichier CSV.
Séparer les catégories par une virgule, donc.
Or, la virgule entre les catégories est interprétée comme un changement de champ, et "Cat1>SubCat1" est pris pour un "Tag" (champ suivant du CSV).
Ce qui décale toute la suite.
J'ai essayé le pipe "|" entre les catégories, "Cat1|Cat1>SubCat1|Cat1>SubCat2", sans succès : WooCommerce me créait une catégorie "SubCat1|Cat1".
Lorsqu'il y a une seule catégorie ça fonctionne.
J'ai essayé avec un fichier exemple téléchargé sur le net qui séparait les catégories par une virgule et ça fonctionnait.
--------------------------------------------
J'ai trouvé la solution en rédigeant cette question.
Je poste ce sujet quand même pour ceux qui se retrouveraient dans le même cas que moi.
Solution :
Il faut encadrer ce champ CSV "CategoriesIds" spécifiquement, lui seul, par des guillemets doubles --> "
Et personne ne vous l'explique nulle part en fait...
Merci !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 // Mon champ "catégories" provient d'un DataSet de BdD string CatId = "\"" + dt["NomCat"].ToString().Replace(",\r\n",",") + "\""; // categorie 1 > Categorie 2 (> = hiérarchie) - Encadré par " CatId = CatId.Replace("\\",">"); // categorie 1 > Categorie 2 (> = hiérarchie) DataWoo.Add("Categories_ids", CatId) ; // Je rempli ensuite une String<string> qui remplira la table spécifique WooCommerce où seront prises les data pour construire le CSV
Partager