我正在尝试检查产品是否位于特定类别中,并更改product-list.tpl中“添加到购物车”按钮的标签
在这种情况下,如果产品位于类别ID 14中,我想显示“在此处阅读更多”而不是“添加到购物车”。
目前,14类产品的所有产品都是“添加到购物车”
我正在运行1.6.0.11
{assign var='associated' value=0}
{foreach Product::getProductCategories($smarty.get.id_product) as $category}
{if in_array($category, 14)}
{assign var='associated' value=1}
{/if}
{/foreach}
{if $associated==1}
{l s='Read more here'}
{else}
{l s='Add to cart'}
{/if}
答案 0 :(得分:2)
试试这个:
{assign cat14 [['id_category' => 14]]}
{if Product::idIsOnCategoryId($smarty.get.id_product, $cat14)}
{l s='Read more here'}
{else}
{l s='Add to cart'}
{/if}
答案 1 :(得分:0)
当我必须做类似的事情时,我只需为一个(或多个)类别设置目录模式:
(我在product-list.tpl中的foreach循环之后添加它)
{assign findcat [['id_category' => 14], ['id_category' => 33]]}
{if Product::idIsOnCategoryId($product.id_product, $findcat)}
{assign var="PS_CATALOG_MODE" value="true"}
{/if}
如果您需要隐藏产品页面中的销售选项,请在开头添加此选项(product.tpl):
{assign cat15 [['id_category' => 15], ['id_category' => 17], ['id_category' => 27], ['id_category' => 29], ['id_category' => 30], ['id_category' => 31]]}
{if Product::idIsOnCategoryId($product->id, $cat15)}
{assign var="PS_CATALOG_MODE" value="true"}
{/if}