按产品ID获取图像的服务器路径 - Magento 1.8

时间:2016-10-28 07:38:10

标签: php codeigniter magento

我在同一台服务器上有一个CI项目和一个Magento项目。

我想定期将Magento产品导入我的CI网站。

一切都很完美,我现在能够将每件东西从Magento导入我的CI网站。

如何获取magento产品图像的物理/服务器路径? 我想将这些图像文件复制到我的CI项目中。

以下是我用

加载产品的相对行
$product = $simpleProduct->getData()

这是与我相关的图像相关部分。查看file密钥,它不是实际的服务器路径。

 "media_gallery":{  
     "images":[  
        {  
           "value_id":"6",
           "file":"\/2\/-\/2-2.jpg",
           "label":"",
           "position":"1",
           "disabled":"0",
           "label_default":null,
           "position_default":"1",
           "disabled_default":"0"
        },
        {  
           "value_id":"5",
           "file":"\/2\/_\/2.jpg",
           "label":"",
           "position":"2",
           "disabled":"0",
           "label_default":null,
           "position_default":"2",
           "disabled_default":"0"
        }
     ],
     "values":[  

     ]
  },

PS 我不想要这样的图像的浏览器路径http://www.website/media/catalog/product/cache/1/image/9df78eab33525d08d6e5fb8d27136e95/2/-/image_name_here.jpg

我想要服务器路径。

2 个答案:

答案 0 :(得分:1)

您好,您可以使用此代码获得此功能 用于缓存图像

foreach ($_product->getMediaGalleryImages() as $image) {
        echo Mage::helper('catalog/image')->init($product, 'image', $image->getFile());
    }

表示没有缓存原始图像

foreach ($_product->getMediaGalleryImages() as $image) {

        echo Mage::getUrl('media').'catalog/'.'product'.$image->getFile().'<br>';
    }

答案 1 :(得分:0)

我制作的脚本使用其sku提取有关产品的信息:

<?php
if(isset($_GET['productId']))
{
getImage($_GET['productId']);
}
else{
    header('HTTP/1.0 404 Not Found', true, 404);
    echo "404 Not found";
    die();
}
function getImage($product)
{
    @ob_start();
    @session_start();

    //for order update
    include 'app/Mage.php';
    Mage::app('default');
    $product_id = Mage::getModel("catalog/product")->getIdBySku( $product );
    $cProduct = Mage::getModel('catalog/product');
    $cProduct->load($product_id);
    $productInfo = Array(
    'name' => $cProduct->getImageUrl(),
    'url' => $cProduct->getUrlPath(),
    'prodId' => $product_id,
    'prodName' => $cProduct->getName(),
    'prodPrice' => round($cProduct->getFinalPrice(),2),
    'currency' => Mage::app()->getLocale()->currency(Mage::app()->getStore()->getCurrentCurrencyCode())->getSymbol()
    ); 
    echo json_encode($productInfo); 
}


?>

然而,它只会获取图像的基本网址而不是所有内容