1

我正在使用 Magento 社区版本 1.5.1.0。

我需要让产品有图像或没有图像。如果产品没有图像,我们希望分配其类别图像而不是 magento 默认图像。

我怎样才能找到该产品是否有图像?

4

4 回答 4

10

使用以下代码

<?php
        ini_set('display_errors','on');
        require_once 'app/Mage.php';
        Mage::app('default');
        $products = Mage::getModel('catalog/product')->load(1); //Product ID
        echo "<pre>";
        //print_r($products);
        echo $products->getImage();
        echo "<br>";
        echo $products->getSmallImage();
        echo "<br>";
        echo $products->getThumbnail();
        echo "<br>";
        echo Mage::helper('catalog/image')->init($products, 'small_image')->resize(163,100); // resize function is used to resize image
        echo "<br>";
        echo Mage::helper('catalog/image')->init($products, 'image')->resize(400,400);
    ?>
于 2012-05-03T11:21:37.153 回答
9
$product->getImage();

使用上面的代码,如果产品有,它会给出图像,或者它返回键“ no_selection

if($product->getImage() == 'no_selection')
{
     // PRODUCT HAVE NO IMAGE
}
else
{
     // PRODUCT HAVE IMAGE
}

有了这个,我们可以发现图像是否已上传到产品。

于 2012-05-03T09:08:50.293 回答
1

try this

if ($_product->getImage() != 'no_selection' && $_product->getImage()){put your category image retrive code }
于 2012-05-03T06:58:19.997 回答
1

当您调用$your_product = Mage::getModel('catalog/product')结果时,您可以找到媒体数组的详细信息。因此,如果您检查该数组的计数,您就会知道与产品关联的图像数量;如果计数为零,则不关联任何图像。

所以:

if(count($your_product['media_gallery']['images']) > 0)
// PRODUCT HAVE IMAGE
else
// PRODUCT HAVE NO IMAGE
于 2013-05-10T09:52:43.840 回答