Jump to content

Problème d'affichage produits avec fichier csv


Recommended Posts

Bonjour à tous !

je m'appelle julien, je viens d'installer prestashop pour me familiariser avec, dans le but d'ouvrir ma boutique de pièces détachées automobile.

 

Pour ce faire, j'ai reçu de chez un de mes fournisseurs un fichier csv.

 

J'ai rajouté dans ce fichier une colonne (sous excel) avec le numéro de la catégorie dans laquelle je veux que chaque produit soit importé.

exemple :

jante1 xxx dans la catégorie 102 (correspondant à : catégorie jantes / sous-catégorie jantes xxx)

jante2 xxx dans la catégorie 102 (correspondant à : catégorie jantes / sous-catégorie jantes xxx)

et

jante1 yyy dans la catégorie 103 (correspondant à : catégorie jantes / sous-catégorie jantes yyy)

jante2 yyy dans la catégorie 103 (correspondant à : catégorie jantes / sous-catégorie jantes yyy)

 

L'importation fonctionne, mais il y a un Bug.

 

En fait tous les produits des sous catégorie (xxx et yyy) apparaissent et dans la catégorie principales (parente) dont dépendent les sous-catégories et aussi dans leur bonne sous-catégorie.

 

J'ai vérifié dans le back-office l'arborescence de chaque fiche "catégories" et "sous-catégories" et il n'y a aucun produit sélectionné pour y apparaitre. De plus j'ai bien vérifié chaque fiche produit aussi, et il n'y a de coché dans l'arborescence que la sous-catégorie dont ils dépendent.

 

Ce que je souhaiterai c'est que les produits n'apparaissent que dans la sous-catégorie dont ils dépendent.

pourquoi sont-ils tous présents dans la catégorie principale ?

Comment faire pour ne les faire apparaitre que dans leur sous-catégorie ?

 

Là je "sèche".... est-ce une modif à faire dans un fichier tpl, ou le problème vient du numéro que j'ai saisi dans le fichier csv ?

 

Merci de votre aide !

Link to comment
Share on other sites

Bonjour,

 

j'utilise l'import et je vais essayer de t'expliquer

je prend l'exemple suivant :

catégorie 2

souscatégorie 21

catégorie 3

souscatégorie 31

si tu veux afficher le produits par exemple dans 2 - 21 - 31 pas dans 3

dans ta colonne catégories tu mets 2,21,31 (catégories espacées par une virgule)

(pour info par défaut la catégorie 1 c'est celle des produits phares)

 

une précision le format csv excel (ansi) n'est pas bon pour l'import presta, il doit etre converti en utf8 sinon tu n'as pas l'affichage des accents

 

Patrick

Link to comment
Share on other sites

Ok merci ;)

 

Mais je viens de réessayer en ça ne marche pas.

Je vais te donner un exemple concret de mon test :

j'ai créé ces catégories et sous catégories (je te mets avec le numéro donné par prestashop ):

 

pièces auto (caté n°128) - pièces (sous-caté 129) -- capots (sous-sous-caté 133)

______________________- freinage (sous-caté 130) -- plaquettes (sous-sous-caté 131)

_____________________________________________-- disques (sous-sous-caté 132)

 

Voilà, j'ai ma catégorie principale, mes sous-catégories et mes sous-sous-catégories.

Ensuite j'attribue à mes produits, via le fichier csv un numéro, pour que les produits soient intégrés au bon endroit.

capot xxx -- 133

plaquettes xxx ---131

disques xxx --- 132

 

Et bien après intégration, ils apparaissent TOUS dans la catégorie 128,

Puis ceux de la sous-sous-catégorie 133 apparaissent aussi dans la sous-catégorie 129.

De même pour la sous-sous-catégorie 132 et 131 qui apparaissent aussi dans la sous-catégorie 130.

 

Je ne sais pas si tu a suivi, c'est bizarre :blink:

Link to comment
Share on other sites

  • 3 weeks later...

Je crois que j'ai trouvé !!!!

Ça doit certainement venir du fichier "product_list.tpl"

Il y a certainement une modif à faire pour que cette liste des produits n'apparaissent QUE dans sa sous catégorie et non plus aussi dans la catégorie parente....

Je creuse....

.......creuse

...........creuse

Link to comment
Share on other sites

En fait, sur les pages concernées, lorsque je visualise le code source, au dessous de l'id "Subcategory", il y a une id "Sort products" qui apparait, avec la possibilité de trier/comparer...

je vous donne ici le code de ma page :

 

<!-- Category image -->

 

<!-- Subcategories -->

<div id="subcategories">

<h3>Sous-catégories</h3>

 

<ul class="inline_list">

<li>

<a href="http://127.0.0.1/prestashop/category.php?id_category=133" title="capots">

<img src="/prestashop/img/c/fr-default-medium.jpg" alt="" width="80" height="80" />

</a><br />

<a href="http://127.0.0.1/prestashop/category.php?id_category=133">capots</a>

</li>

</ul>

 

<br class="clear"/>

</div>

 

 

 

<script type="text/javascript">

// <![CDATA[

var min_item = 'Merci de choisir au moins 1 produit.';

var max_item = "Vous ne pouvez pas ajouter plus de 3 produits dans le comparateur.";

//]]>

</script>

<form method="get" action="http://127.0.0.1/prestashop/products-comparison.php" onsubmit="true">

<p>

<input type="submit" class="button" value="Comparer" style="float:right" />

<input type="hidden" name="compare_product_list" class="compare_product_list" value="" />

</p>

</form>

 

 

<!-- Sort products -->

 

<script type="text/javascript">

//<![CDATA[

 

$(document).ready(function()

{

$('#selectPrductSort').change(function()

{

var requestSortProducts = 'http://127.0.0.1/prestashop/category.php?id_category=129';

var splitData = $(this).val().split(':');

document.location.href = requestSortProducts + ((requestSortProducts.indexOf('?') < 0) ? '?' : '&') + 'orderby=' + splitData[0] + '&orderway=' + splitData[1];

});

});

//]]>

 

</script>

 

<form id="productsSortForm" action="http://127.0.0.1/prestashop/category.php?id_category=129">

<p class="select">

<select id="selectPrductSort">

<option value="position:asc" selected="selected">--</option>

<option value="price:asc" >Le moins cher</option>

<option value="price:desc" >Le plus cher</option>

<option value="name:asc" >De A à Z</option>

<option value="name:desc" >De Z à A</option>

<option value="quantity:desc" >Produits en stock</option>

</select>

<label for="selectPrductSort">Tri</label>

</p>

</form>

<!-- /Sort products -->

 

<!-- Products list -->

<ul id="product_list" class="clear">

<li class="ajax_block_product first_item item clearfix">

<div class="center_block">

<a href="http://127.0.0.1/prestashop/product.php?id_product=1" class="product_img_link" title="Schaltkulissenrahmen - fit for Alfa Romeo 155/Fiat Bravo,Marea/Honda Accord"><img src="http://127.0.0.1/prestashop/img/p/1-1-home.jpg" alt="Schaltkulissenrahmen - fit for Alfa Romeo 155/Fiat Bravo,Marea/Honda Accord" width="129" height="129" /></a>

<h3><span class="new">Nouveau</span><a href="http://127.0.0.1/prestashop/product.php?id_product=1" title="Schaltkulissenrahmen - fit for Alfa Romeo 155/Fiat Bravo,Marea/Honda Accord">Schaltkulissenrahmen - fit for...</a></h3>

<p class="product_desc"><a href="http://127.0.0.1/prestashop/product.php?id_product=1" title="- Schaltkulissenrahmen- Top Design- Einfache Installation- 193x118mm- nicht im Bereich der StVZO zugelassen- beleuchtet">- Schaltkulissenrahmen- Top Design- Einfache Installation- 193x118mm- nicht im Bereich der StVZO zugelassen- beleuchtet</a></p>

</div>

<div class="right_block">

<div>

<span class="price" style="display: inline;">14,35 €</span><br /> <span class="availability">En stock</span> </div>

<a class="button ajax_add_to_cart_button exclusive" rel="ajax_id_product_1" href="http://127.0.0.1/prestashop/cart.php?add&id_product=1&token=7c85a5b8e0e164b9384528dfab0ba2a3" title="Ajouter au panier">Ajouter au panier</a>

<a class="button" href="http://127.0.0.1/prestashop/product.php?id_product=1" title="Voir le produit">Voir le produit</a>

<p class="compare"><input type="checkbox" class="comparator" id="comparator_item_1" value="comparator_item_1" /> <label for="comparator_item_1">Comparer</label></p>

</div>

</li>

<li class="ajax_block_product last_item alternate_item clearfix">

<div class="center_block">

<a href="http://127.0.0.1/prestashop/product.php?id_product=2" class="product_img_link" title="Entretoises 70 mm Système B pour Alfa Romeo 155 (Typ 167)"><img src="http://127.0.0.1/prestashop/img/p/2-2-home.jpg" alt="Entretoises 70 mm Système B pour Alfa Romeo 155 (Typ 167)" width="129" height="129" /></a>

<h3><span class="new">Nouveau</span><a href="http://127.0.0.1/prestashop/product.php?id_product=2" title="Entretoises 70 mm Système B pour Alfa Romeo 155 (Typ 167)">Entretoises 70 mm Système B pour...</a></h3>

<p class="product_desc"><a href="http://127.0.0.1/prestashop/product.php?id_product=2" title="- Elargisseur de voie- haute qualité- Homologué- Largeur/Essieu 70mm Système B avec centrage. ET: 4/98 -NLB 58">- Elargisseur de voie- haute qualité- Homologué- Largeur/Essieu 70mm Système B avec centrage. ET: 4/98 -NLB 58</a></p>

</div>

<div class="right_block">

<div>

<span class="price" style="display: inline;">1 622,49 €</span><br /> <span class="availability">Stock épuisé</span> </div>

<span class="exclusive">Ajouter au panier</span>

<a class="button" href="http://127.0.0.1/prestashop/product.php?id_product=2" title="Voir le produit">Voir le produit</a>

<p class="compare"><input type="checkbox" class="comparator" id="comparator_item_2" value="comparator_item_2" /> <label for="comparator_item_2">Comparer</label></p>

</div>

</li>

</ul>

<!-- /Products list -->

 

<script type="text/javascript">

// <![CDATA[

var min_item = 'Merci de choisir au moins 1 produit.';

var max_item = "Vous ne pouvez pas ajouter plus de 3 produits dans le comparateur.";

//]]>

</script>

<form method="get" action="http://127.0.0.1/prestashop/products-comparison.php" onsubmit="true">

<p>

<input type="submit" class="button" value="Comparer" style="float:right" />

<input type="hidden" name="compare_product_list" class="compare_product_list" value="" />

</p>

</form>

 

 

 

<!-- Pagination -->

<div id="pagination" class="pagination">

</div>

<!-- /Pagination -->

 

 

</div>

 

 

En fait toute la partie en rouge ne devrait pas exister....non ?

Link to comment
Share on other sites

En fait, si je "commente" le fichier "product-list.tpl", la liste disparait...

mais ce n'est pas le problème, la liste disparait aussi bien dans la catégorie parente que dans les sous-catégorie.

Ce que je ne comprends pas c'est pourquoi tous les produits sont appelés dans la catégorie parente.

Il doit il y avoir un réglage simple à faire pour que les produits ne soient visibles que dans leur propre sous-catégorie...je ne sais pas comment "régler" correctement cet affichage...

Link to comment
Share on other sites

J'AI TROUVE !!!!

Le problème vient de la navigation à facette !!!!

Lorsqu'elle est active, tous les produits sont présents, lorsque je la désactive, il n’apparait que les icônes des sous-catégories !!!

 

Mais du coup il doit il y avoir un réglage possible.....

je vais fouiller le

Link to comment
Share on other sites

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 account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...