Jump to content

Suppression "ajouter au panier" de la liste produits quand déclinaisons


Recommended Posts

Bonjour,

Ayant des produits avec déclinaisons et d'autres sans,

J'ai modifié ainsi la ligne suivante dans product-list.tpl afin d'ajouter "A partir de" aux produits avec déclinaisons :


{if ($product.id_product_attribute!='')}A partir de {/if}{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}



Je souhaiterais maintenant supprimer le bouton "Ajouter au panier" de la liste des produits, mais encore seulement pour les produits avec déclinaisons.

Ces deux manipulations afin que le client soit obligé d'aller sur la fiche produit et choisir les déclinaisons avant d'acheter un produit avec déclinaisons.

Quelqu'un sait-il comment faire ?

Merci de votre aide !

Link to comment
Share on other sites

Bonsoir,

J'ai finalement trouvé, à l'aide d'autres posts, alors si ça peut servir à quelqu'un :

Pour désactiver l'ajout au panier à partir de la liste des produits des produits avec déclinaisons :
Ligne 21 du fichier product-list.tpl :
Ajouter “$product.id_product_attribute == 0”
Ce qui donne : {if ($product.allow_oosp OR $product.quantity > 0) && $product.customizable != 2 && $product.id_product_attribute == 0}

Pour pas que le bouton soit juste désacitvé et vert, mais qu'il soit vraiment supprimé :
Ligne 24 du product-list.tpl :
remplacer : {l s=‘Add to cart’}
par : {* {l s=‘Add to cart’} *}

Voilà !

Link to comment
Share on other sites

  • 2 weeks later...
Bonsoir,

J'ai finalement trouvé, à l'aide d'autres posts, alors si ça peut servir à quelqu'un :

Pour désactiver l'ajout au panier à partir de la liste des produits des produits avec déclinaisons :
Ligne 21 du fichier product-list.tpl :
Ajouter “$product.id_product_attribute == 0”
Ce qui donne : {if ($product.allow_oosp OR $product.quantity > 0) && $product.customizable != 2 && $product.id_product_attribute == 0}

Pour pas que le bouton soit juste désacitvé et vert, mais qu'il soit vraiment supprimé :
Ligne 24 du product-list.tpl :
remplacer : {l s=‘Add to cart’}
par : {* {l s=‘Add to cart’} *}

Voilà !


Bonjour et merci d'avoir relayé l'info.
Toutefois, j'ai effectué les modification de mon fichier www/themes/prestashop/product-list.tpl mais j'ai toujours le bouton "Ajouter au panier" et la mention "A partir de" n'apparaît pas.
Y aurait-il d'autres manips à faire ?
Je suis en Prestashop V1.4.0.17.
Merci !
Link to comment
Share on other sites

En ce qui me concerne c'était les lignes 17 à 19 qui ont été modifiées.
Vous dites que vous avez modifié le fichier "www/themes/prestashop/product-list.tpl" : vous travaillez directement sur le thème prestashop et n'en avez pas d'autre perso ?
Pouvez-vous copier-coller votre fichier avec les modifs que vous avez effectuées si je voie qqch ?

Link to comment
Share on other sites

Bonjour,
Sauf erreur, vous n'avez pas effectué les modifications que j'indiquai dans le 1er post :

Pouvez-vous retester en remplaçant, ligne 17 :

{if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}

{/if}

Par :

{if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}- Vérifiez bien que vous avez rentrées les déclinaisons au préalable.
- Etes-vous sûr de travailler sur le bon thème (vous travaillez directement sur celui de presta et n'en avez pas créé un autre perso) ?

Link to comment
Share on other sites

  • 3 weeks later...

Bonjour, je me permet de poster le code du fichier de mon product-list.tpl de mon thème.
J'ai essayé à plusieurs reprises de modifier le code pour afficher "A partir de" devant les produits qui ont des déclinaisons et donc où le prix varie, mais cela sans succès.
Si vous pourriez me dire où et quelles modifications faire, je vous en serai reconnaissant
Merci

>{if isset($products)}
   <!-- Products list -->
</pre>
<ul>
   {foreach from=$products item=product name=products}


getImageLink($product.link_rewrite, $product.id_image, 'home')}" alt="{$product.legend|escape:'htmlall':'UTF-8'}" {if isset($homeSize)} width="{$homeSize.width}" height="{$homeSize.height}"{/if} />
{if isset($product.new) && $product.new == 1}{l s='New'}{/if}{$product.name|truncate:35:'...'|escape:'htmlall':'UTF-8'}

{$product.description_short|truncate:360:'...'|strip_tags:'UTF-8'}
                                                                                 

               {if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}{l s='On sale!'}
               {elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}{l s='Reduced price!'}{/if}
               {if isset($product.online_only) && $product.online_only}{l s='Online only!'}{/if}
               {if (!$PS_CATALOG_MODE AND ((isset($product.show_price) && $product.show_price) || (isset($product.available_for_order) && $product.available_for_order)))}

                   {if isset($product.show_price) && $product.show_price && !isset($restricted_country_mode)}{if !$priceDisplay}{convertPrice price=$product.price}{else}{convertPrice price=$product.price_tax_exc}{/if}
{/if}
                   {if isset($product.available_for_order) && $product.available_for_order && !isset($restricted_country_mode)}{if ($product.allow_oosp || $product.quantity > 0)}{l s='Available'}{else}{l s='Out of stock'}{/if}{/if}

               {/if}
               {if ($product.id_product_attribute == 0 || (isset($add_prod_display) && ($add_prod_display == 1))) && $product.available_for_order && !isset($restricted_country_mode) && !$PS_CATALOG_MODE}
                   {if ($product.allow_oosp || $product.quantity > 0) && $product.customizable != 2}
getPageLink('cart.php')}?add&id_product={$product.id_product|intval}{if isset($static_token)}&token={$static_token}{/if}" title="{l s='Add to cart'}">{l s='Add to cart'}
                   {else}
{l s='Add to cart'}
                   {/if}
               {/if}
{l s='View'}
               {if isset($comparator_max_item) && $comparator_max_item}

<input type="checkbox"> {l s='Select to compare'}
               {/if}                


   {/foreach}
</ul>
<br>   <!-- /Products list --><br

Link to comment
Share on other sites

  • 4 years later...

Bonjour,

 

je suis en prestashop 1.5.2. J'ai bien modifié votre code et "a partir de " s'affiche sans problème, MAIS ... aussi pour les produits sans déclinaison !

 

Auriez-vous une astuce pour moi ? Je vous mets le code ici avec votre ligne modifié :

 

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

 

Voyez-vous quelque chose qui pourrait m'aider ?

 

Merci beaucoup.

cordialement

Susanne     

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