Jump to content

[Resolu] Faire apparaitre un onglet promotion sur l'image


Recommended Posts

Bonjour,

 

J'utilise un thème qui fait apparaître le message nouveauté lorsque le produit est nouveau sur les photos. J'essaye depuis ce matin de comprendre le code pour faire pareil lorsque le produit est en promotion mais j'ai plus de volonté que de connaissance...

 

J'essaye de faire le changement dans le fichier product-list.tpl mais je ne dois pas utiliser la bonne variable.

 

Voila le code :

 

<div class="p-item col-md-4 col-sm-12 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">
   <div class="box">    
   <div class="product-container">    
    <div class="center_block">
     <a href="{$product.link|escape:'htmlall':'UTF-8'}" class="product_img_link" title="{$product.name|escape:'htmlall':'UTF-8'}">
      <img src="{$link->getImageLink($product.link_rewrite, $product.id_image, 'home_default')|escape:'html'}" alt="{if !empty($product.legend)}{$product.legend|escape:'htmlall':'UTF-8'}{else}{$product.name|escape:'htmlall':'UTF-8'}{/if}" title="{if !empty($product.legend)}{$product.legend|escape:'htmlall':'UTF-8'}{else}{$product.name|escape:'htmlall':'UTF-8'}{/if}" {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}
      {if isset($product.on_sale) && $product.on_sale == 1}<span class="new">{l s='Promotion'}</span>{/if}
     </a>

 

 

La dernière ligne soulignée, celle qui est toute bancale dans sa logique, c'est la mienne ^_^

J'utilise le span class="new" pour mettre promotion à la place de nouveauté lorsque le produit est en promo... bien sûr ça ne marche pas :D

Le produit en nouveauté et en promotion apparait avec le logo en promotion mais pour les produits en promotions seuls pas de logo.

En fait, je ne sais pas comment écrire mon début de code.

Je sens que :   {if isset($product.on_sale) && $product.on_sale == 1} ce n'est pas tout à fait ça et j'aurai besoin d'un petit coup de pouce.

 

Si quelqu'un peut voler à mon secours...  Merci et bon week-end de Pâques.

Namasté,

Thierry

 

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

coucou

 

pour le prix en promo ou soldes c'est

{if isset($product.on_sale) && $product.on_sale && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}
<p class="imgonsale"></p>
<!--<span class="on_sale title_shop"><img src="{$img_dir}onsale_{$lang_iso}.gif" alt="{l s='On sale'}" class="on_sale_img"/></span>-->
{elseif isset($product.reduction) && $product.reduction && isset($product.show_price) && $product.show_price && !$PS_CATALOG_MODE}
<p class="imgpromo"></p>
{/if}

(j'ai désactiver l'image d'origine avec  <!--  et  -->

 

donc si {$product.on_sale}( en solde) il m'affiche mon image en soldes par la class CSS 

.imgonsale {float:left; background:url(../../../themes/theme593/img/onsale.png) no-repeat; width:55px; height:55px; margin-left:30px;margin-top: 10px;}

si  {$product.reduction} (en promo) il m'affiche mon image en promotion par la class CSS 

.imgpromo {float:left; background:url(../../../themes/theme593/img/promo.png) no-repeat; width:55px; height:55px; margin-left:30px;margin-top: 10px;}

dans le fichier theme/ton theme/css/product-list.css

 

attention ceci est un exemple et adapter a mon theme il faudra p-e ajuster pour le tiens les margin/width/heigt/float

les image sont palcer dans theme/ton theme/img/

 

pour le theme par default de la 1.6.0.5 cela ce passe a partir de la ligne 84 a 88 dans le product-list.tpl

 

@++

 

Loulou66

 

Link to comment
Share on other sites

Bonjour,

 

J'ai adapté le code que tu m'as donné au code de mon thème et j'obtiens (je crois) le résultat escompté.

Merci de ton aide loulou66 et bon week-end !

Thierry

 

PS : Comment note t-on résolu au début du topic ?

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