对于特定类别,我需要在单个产品页面和类别页面以及每个其他页面上自定义徽章。因此,如果产品属于类别ID 14,则显示徽章名称“Premium”(产品是新的或在销售中也必须出现此徽章单元“Premium”)。
我尝试这样做但不起作用(我把它放在products-list.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}
不行:(
答案 0 :(得分:0)
首先,我必须说这是快速破解,并且正确的方法是制作带有自定义钩子的模块。但这里是你瞄准的代码。
在product-list.tpl
添加
{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}
product.tpl
使用
{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}
您正在设置premium
变量,但稍后会使用associated
。
同样in_array
反过来in_array。