Jump to content

Modifier nombre produits par ligne


Recommended Posts

Hello à tous,

 

Je suis un peu paumé pour modifier le nombre de produits sur chaque ligne. Lorsque l'on click sur une marque, trois colonnes s'affichent, avec donc trois produits par ligne. J'aimerais en ajouter un quatrième.

 

J'ai essayé de trouver le code "{assign var='nbItemsPerLine' value=4}" après avoir fait des recherches sur le forum, mais sans succès. J'utilise le thème blackhawk 1.2 et j'ai regardé dans "product_list", "category" et "product_sort".

 

Auriez-vous une idée pour me sauver la vie ? Parce que pour le moment ça nous donne une présentation ridicule.

 

Ci-joint une photo exemple pour vous montrer ce que ça donne actuellement : On voit bien l'espace à droite qui pose problème.

 

Merci d'avance pour votre aide.

 

998253exempleproduits.jpg

Link to comment
Share on other sites

Bonjour,

 

le morceau de code en question

 

{assign var='nbItemsPerLine' value=3}

 

se trouve bien sur le fichier product-list.tpl. En début de page, juste après le premier <div>

 

Après l'avoir repéré, modifiez-le en remplaçant la variable 3 par 4.

 

N'oubliez pas de baisser également la valeur de la marge de droite de votre balise <li> afin de reserrer les cadres dans votre pages.

 

Elle devrait normalement se trouver sur le fichier product-list.css sous la forme suivante :

 

ul#product_list li {
  ...
  ...
  margin-right: valeur_de_marge;
  ...
  ...
}

 

Modifiez la valeur de la marge jusqu'à obtenir l'aspect visuel recherché.

 

Tenez également compte de la dimension de la balise <ul> :

 

ul#product_list {
...
...
width: valeur_de_largeur;
}

 

Cordialement

AH

Link to comment
Share on other sites

Hello,

 

Merci pour votre réponse, seulement je ne retrouve toujours pas ce bout de code {assign var='nbItemsPerLine' value=3}

 

 

J'ai essayé de l'ajouter à la mano, mais sans succès, il n'est pas reconnu. N'étant vraiment pas un professionnel dans ce domaine je dois sans doute faire une erreur de placement...

 

Je vous copie le code de mon fichier product-list.tpl pour que vous puissiez voir ce qu'il contient :

 

 

{if isset($products)}

<!-- Products list -->

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

{foreach from=$products item=product name=products}

<li class="alpha four columns ajax_block_product {if $smarty.foreach.products.first}first_item{elseif $smarty.foreach.products.last}last_item{/if} {if $smarty.foreach.products.index % 2}alternate_item{else}item{/if} clearfix">

<a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}" class="pic">

<img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} />

{if isset($product.new) && $product.new == 1}<span class="new">{l s='New'}</span>{/if}

</a>

{if isset($comparator_max_item) && $comparator_max_item}

<p class="compare">

<input type="checkbox" class="comparator" id="comparator_item_{$product.id_product}" value="comparator_item_{$product.id_product}" {if isset($compareProducts) && in_array($product.id_product, $compareProducts)}checked="checked"{/if} />

 

</p>

{/if}

<h3><a href="{$product.link|escape:'htmlall':'UTF-8'}" title="{$product.name|escape:'htmlall':'UTF-8'}">{$product.name|escape:'htmlall':'UTF-8'|truncate:35:'...'}</a></h3>

{if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))}

<div class="content_price">

{if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}<span class="price" style="display: inline;">{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}</span><br />{/if}

 

</div>

 

{/if}

 

 

</li>

{/foreach}

</ul>

<!-- /Products list -->

{/if}

 

Peut-être que ce code s'appelle différemment dans ce thème ?

 

EDIT : Après quelques essais, je me suis apperçu que je n'ai pas non plus le code "margin-right:" dans le css.

J'ai du prendre le thème le plus relou de la terre évidemment.

 

J'ai bien width, mais sinon j'ai toujours des notations "position:relative;".

Edited by EDGM (see edit history)
Link to comment
Share on other sites

Bonjour,

 

Non je n'ai pas de modules pour ça. Uniquement le thème, rien de plus.

La boutique n'est pas encore en ligne car non finalisée. Est-ce que je peux l'activer tout en bloquant les achats potentiels pour que vous puissiez vous y rendre ?

 

Merci pour votre aide.

Link to comment
Share on other sites

Bonjour,

 

si vous avez acheté le thème en question sur Addons, vous avez la possibilité de contacter le développeur du thème depuis la page de vente du thème. Peut-être même directement par email, si l'auteur a indiqué sont adresse sur les fichiers readme d'aide à l'installation. Ces fichiers se trouve dans un dossier du thème nommé /doc/.

 

Cordialement

AH

Link to comment
Share on other sites

Bonjour,

 

Malheureusement c'est un thème gratuit. Il n'y a donc aucune information de contact...

Une autre diée pour modifier manuellement ces espaces entre les produits et en ajouter un 4ème ?

 

Merci de votre aide, c'est la galère PS quand on connait rien au codage...

Link to comment
Share on other sites

  • 2 weeks later...

sans l'url on ne peut vous aider mieux... les codes énoncés ci-dessus doivent se trouver dans les fichiers .css (pour le margin-right) et .tpl pour le {assign var='nbItemsPerLine' value=3}

 

MAIS certaines versions de Prestashop ne s'y trouvent pas par défaut il faut donc l'ajouter sois-meme.

 

Si votre boutique est en phase test vous pouvez annuler les achats ou tout simplement désactiver vos produits et mettre des produits lambda à 0 euros.

Link to comment
Share on other sites

  • 2 years later...

Bonjour

J'ai tenté les diverses options présentées ici, mais à chaque fois je suis confronté à un problème, lorsque l'affichage grille est bon, le liste déconne.

 

je voudrais 4 produits dans les pages autres que la page index accueil

 

presta 1.6.1.0, thème default bootstrap

 

j'ai donc modifié le product_list.tpl comme suit (les modifs sont en gras)

 

ligne 28
        {assign var='nbItemsPerLine' value=4}
        {assign var='nbItemsPerLineTablet' value=2}
        {assign var='nbItemsPerLineMobile' value=3}
    {else}

 

ligne 48
        <li class="ajax_block_product{if $page_name == 'index' || $page_name == 'product'} col-xs-12 col-sm-4 col-md-3{else} col-xs-12 col-sm-6 col-md-3

 

ce qui me donne bien 4 produits sur la meme ligne en affichage grille

 

cependant l'affichage grille n'est plus bon et j'ai bien essayé de modifier le global.js pour remettre ca d'aplomb mais je n'y suis pas arrivé.

 

Si une bonne ame peut m'aider.

 

Ci joint les deux affichages après modification.

 

grille bon:

post-1087287-0-53665300-1441474509_thumb.jpg

 

liste pas bon:

post-1087287-0-46986900-1441474521_thumb.jpg

Link to comment
Share on other sites

  • 9 months later...

Si ça peut vous aider, essayez la recherche sans le 3.

 

J'ai fais une recherche sans le 3, et j'ai trouvé que le nom d'un module du thème acheté remplaçait le 3.

C'est à dire que j'ai trouvé ce code var='nbItemsPerLine' value=$smartpro

smartpro était à la place du 3

 

Cela fonctionne de remplacer par le chiffre 6 par exemple si l'on veut 6 colonnes, mais le problème c'est le travail sur le langage CSS que je ne maitrise pas bien.

Donc, je n'ai pas encore réussi à présenter ma page produit :(

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...