2016-10-20 6 views
0

Ich brauche, für bestimmte Kategorie, auf einzelne Produktseite und Kategorie Seite und jede andere Seite, ein benutzerdefiniertes Abzeichen. Wenn das Produkt auf der Kategorie ID 14 ist, wird der Anzeigename "Premium" (Produkt ist neu oder im Verkauf muss angezeigt werden, erscheint auch diese Ausweiseinheit "Premium").Abzeichen hinzufügen, wenn Produkt in einer bestimmten Kategorie auf Prestashop

Ich versuche, dies zu tun, aber nicht arbeiten (Ich legte auf Produktliste.tpl).

{assign var='premium' value=0}     
    {foreach Product::getProductCategories($smarty.get.id_product) as $category} 
     {if in_array($category, 14)} 
      {assign var='premium' value=1} 
     {/if} 
{/foreach} 
{if $associated==1} 
    <div class =" origine-GB "> </ div> 
{/if} 

nicht funktionieren :(

Antwort

0

Zuerst muss ich sagen, dies ist nicht nur schnell Hack und dass richtige Weg wäre, ein Modul mit benutzerdefinierten Haken vielleicht zu machen. Aber hier ist Code, den Sie bekommen wollen.

In product-list.tpl hinzufügen

    {assign var='premium' value=0} 
        {if in_array('14', Product::getProductCategories($product.id_product))} 
         {assign var='premium' value=1} 
        {/if} 
        {if $premium==1} 
         <div class =" origine-GB "> </ div> 
        {/if} 

Und für product.tpl Verwendung

  {assign var='premium' value=0}     
      {if in_array('14', Product::getProductCategories($product->id))} 
      {assign var='premium' value=1} 
      {/if} 
      {if $premium==1} 
       <div class =" origine-GB"> </ div> 
      {/if} 

Sie haben premium Variable festgelegt, aber verwenden Sie associated später.

Auch in_array geht anders herum in_array.

Verwandte Themen