cara mendapatkan semua gambar dari produk tertentu

8

Cara mendapatkan semua gambar dari produk tertentu dengan menggunakan kode ini saya hanya dapat mengambil satu gambar dari produk tertentu. .

Tolong bantu saya baru dalam hal ini.

<?php 
// Get products in category
require_once('../app/Mage.php');//Path to Magento umask(0);

if(isset($_GET["categoryId"])){
  $categoryId=$_GET["categoryId"];
    $proxy = new SoapClient('http://www.prashant.com/index.php/api/v2_soap/?wsdl'); // TODO : change url
    $sessionId = $proxy->login('prash', 'prashant123@'); // TODO : change login and pwd if necessary

    $products= $proxy->catalogCategoryAssignedProducts($sessionId,$categoryId);


    $itemDetails=array();
    Mage::app(); 

  foreach ($products as $item) { 

    $product2 = Mage::getModel('catalog/product')->load($item->product_id);
    $productMediaConfig = Mage::getModel('catalog/product_media_config');
    $baseImageUrl = $productMediaConfig->getMediaUrl($product2->getImage());
    $price2=0;
    $price2=$product2->getFinalPrice();
    if($price2==0){
    $price2=$product2->getPrice();
    }



    $desc=$product2->getDescription();
           if($desc==""){
            $desc="blank";
           }
           $baseImageUrl = $productMediaConfig->getMediaUrl($product2->getImage());
           if($baseImageUrl=="http://www.prashant.com/media/catalog/product/"){
            $baseImageUrl="http://www.prashant.com/customApi/icon.png";
           }

           //"desc"=>$desc,

           $statusp=$product2->getStatus();
    $statusen= Mage_Catalog_Model_Product_Status::STATUS_ENABLED;


    if($statusp==$statusen){
         $itemDetails[]=array(
      "productId"=>$item->product_id,
      "name"=>$product2->getName(),
      "price"=>$product2->getPrice(),
      "spprice"=>$price2,
      "desc"=>$desc,
      "imageurl"=>$baseImageUrl,
      );
    }


  }
  //return array of products
  //echo "<pre>";
  //print_r($itemDetails);
  //echo "</pre>";
  echo json_encode($itemDetails);
  exit();
}else{
  echo "error";
  exit();
}
?>
Prashant Das
sumber

Jawaban:

8

Gunakan kode berikut untuk memanfaatkan semua gambar dari produk tertentu.

$product = Mage::getModel('catalog/product')->load(2);
$base = $product->getImage();
$thumb = $product->getThumbnail();
$small = $product->getSmallImage();

foreach ($product->getMediaGalleryImages() as $image) 
{ //will load all gallery images in loop
    //print_r($image);
      $file_name = $image->getFile();
}
Abhinav Singh
sumber
4

Anda bisa mendapatkan produk semua gambar dengan skrip berikut termasuk gambar yang dikecualikan:

$product->getMediaGalleryImages('images')

$product should be an instance of Mage_Catalog_Model_Product
sandip
sumber
3

Di bawah Variabel mengembalikan Anda array semua gambar media sehubungan dengan id produk itu.

 $images = Mage::getModel('catalog/product')->load($item->product_id)->getMediaGalleryImages();
Ram Pratap Singh Gour
sumber
2
$result = $client->catalogProductAttributeMediaList($session, $_productId);
echo "<pre>"; print_r($result);
Pradeep Sanku
sumber
2
<?php foreach ($product->getMediaGalleryImages() as $image) :?>

<img src="<?php echo Mage::helper('catalog/image')->init($product, 'image', $image->getFile())->resize(100, 100); ?>" alt="<?php echo $product->getName()?>" />

<?php endforeach; ?>
Vinod Kumar
sumber
1

fungsi getImage () hanya bisa memberi Anda gambar dasar suatu produk.

Jika ingin mendapatkan semua gambar produk maka Anda harus menghubungi galeri media .

Jika Anda objek produk penuh maka Anda dapat media gambar menggunakan kode di bawah ini:

$mediaGallery = $product->getMediaGalleryImages();
    /* get Image one by  using loop*/
    foreach ($product2->getMediaGalleryImages() as $image) {
        echo ($image->getUrl());
    $productMediaConfig->getMediaUrl($image->getUrl());
    } 

setelah itu $desc=$product2->getDescription();.

Perhatikan bahwa: Seperti yang Anda milikifull load the product model by product2 = Mage::getModel('catalog/product')->load($item->product_id);

Maka Anda menggunakan media gambar dengan getMediaGalleryImages() mudah.

Jika Anda memiliki koleksi, gunakan cara yang lebih cepat untuk memuat gambar media dalam koleksi produk untuk mendapatkan gambar media

Amit Bera
sumber
1

Coba yang ini:

$product = Mage::getModel('catalog/product')->load(3);//product id 3

    foreach ($product->getMediaGalleryImages() as $image) {
                         echo $image->getUrl();
    }  
PЯINCƏ
sumber