在prestashop中获取属性的图像和颜色

时间:2017-04-28 16:40:15

标签: php smarty prestashop

是否有一个函数可以在prestashop中获取属性的图像或颜色? 当您在购物车上添加产品时,我想显示所选属性的图像而不是原始图像。 当我读取$ products变量时,它会输入属性的名称和其他信息,但它不会显示我可能用于在颜色文件夹中找到正确图像的ID(/ img / co /)

1 个答案:

答案 0 :(得分:0)

您需要一个特定的功能来获取图片ID

public static function getProducImage($id_product_attribute,$id_product)
{
  if (isset($id_product_attribute) && $id_product_attribute) {
        $id_image = Db::getInstance()->getValue('
            SELECT `image_shop`.id_image
            FROM `'._DB_PREFIX_.'product_attribute_image` pai'.
            Shop::addSqlAssociation('image', 'pai', true).'
            LEFT JOIN `'._DB_PREFIX_.'image` i ON (i.`id_image` = pai.`id_image`)
            WHERE id_product_attribute = '.(int)$id_product_attribute. ' ORDER by i.position ASC');
    }
    if (!isset($id_image) || !$id_image) {
        $id_image = Db::getInstance()->getValue('
            SELECT `image_shop`.id_image
            FROM `'._DB_PREFIX_.'image` i'.
            Shop::addSqlAssociation('image', 'i', true, 'image_shop.cover=1').'
            WHERE i.id_product = '.(int)$id_product
        );
    }
        return $id_image;
}