Opencart如果产品具有属性PHP声明

时间:2014-03-05 14:57:33

标签: php opencart

在Opencart的product.tpl上,我正在尝试显示“包含保修”图标。

我的问题是,我店里的每件产品都没有保修,只有特定的产品才有。在我的每个产品上,我都有一整套属性(规格)。我想知道是否有一些PHP代码可以包围图像,我可以使用IF语句来说出这样的话:

单一声明:

<?php if (products attributes "Product type = Computer") { //Do this } ?>

多重声明:

<?php if (products attributes "Product type = Computer" & "Screen Size = 56") { //Do this } ?>

我知道这不是上面的代码,但我想知道是否有使用PHP if语句与Opencart属性。

先谢谢!!

1 个答案:

答案 0 :(得分:1)

方法1:(脏方法)

if ($attribute_groups) {
  foreach ($attribute_groups as $attribute_group) { 
    foreach ($attribute_group['attribute'] as $attribute) { 
      if($attribute['name']=='warranty' && $attribute['text']=="yes")
      {
        // display image
        // stop the loop if you don't need it further
      }
     }
  }
}

方法2 :在model/catalog/product.php中创建一个类似checkProductWarranty()的函数,可能会返回一个布尔值

在这种方法中,基本上你需要在product_attribute中将attribute_descriptionattribute_id联系起来name="warranty"放在where子句中并做你的事情

供参考,您可以在同一模型文件中看到public function getProductAttributes($product_id)

方法1有效,但它会遍历所有可能无效的属性