2017-04-04 1 views
0

구성 가능한 제품에서 간단한 제품 이미지를 사용할 수있는 방법이 있습니까? 예를 들어, 서로 다른 이미지와 인벤토리를 가진 4 개의 간단한 제품이있는 구성 가능한 제품이 하나 있습니다. 구성 가능한 제품은 그 단순한 제품이 품절되는 경우, 구성 가능한 제품은 재고가있는 다른 간단한 제품 이미지를 자동으로 선택해야합니다. 구성 가능한 제품에 표시된 색상 옵션을 고객이 사용할 수없는 경우가 있기 때문에이 기능이 필요합니다.구성 가능한 제품 이미지에 간단한 제품 이미지를 사용하는 방법?

Devs, 나에게 플러그인을 제안하거나 어떤 코드 또는 임의의 magento 구성이나 제품의 변경이 가능하면 제안하십시오. 알 수 있습니다. 가능하거나 불가능합니다. 모든 제안은 저에게는 고맙습니다.

+0

구성 가능한 제품의 이미지를 지정해야한다고 생각합니다. Magento 1.8.1을 Simple Configurable Products 확장 기능과 함께 사용하면 사용자가 특정 단순 제품을 선택하면 해당 제품의 이미지로 이미지가 업데이트됩니다. 나는 최신 버전이 어떻게 처리하는지 모르겠습니다. – PedroKTFC

답변

0

사용 (app\design\frontend\{{template name}}\default\template\catalog\product\view\media.phtml)

<?php if($_product->getTypeId() == "configurable"){ 
    $_configurable = $_product->getTypeInstance()->getUsedProductIds(); 
    foreach ($_configurable as $_config){ 
     $_simpleproduct = Mage::getModel('catalog/product')->load($_config); 
     $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($_simpleproduct); 
     if($stock->getQty() && $stock->getIs_in_stock()){ 
      foreach ($_simpleproduct->getMediaGalleryImages() as $image) { 
       echo '<img src="'.$image->getUrl().'" /><br>'; 
      } 
      break;   
     } 
}} ?> 
0

확인하십시오. Product Image Attribute extension을 확인하십시오. 도움이 될 수 있습니다. 확장을 사용하면 미디어 추가 특성을 설정할 수 있습니다. 일부 이미지를 제품에 대한 추가 속성으로 지정할 수 있습니다.

"추가 정보"를 누르면 필요한 추가 기능에 대해 논의 할 수 있습니다. media.phtml 파일에 코드 아래

+0

솔루션에 대한 자세한 정보를 준비하십시오. 대답은 실제로 대답을 포함해야합니다. https://meta.stackexchange.com/questions/8231/are-answers-that-just-contain-links-where other-really-good-answers –

0

제품보기 구성의 자료 이미지

허용 된 대답은 작업 솔루션은, 그러나, 나는 getUsedProductCollection()를 호출 선호하는 것입니다 나는 이것이 더 효율적이라고 믿는 바로 그 것이다. getUsedProductIds()은 결국 getUsedProductCollection()을 호출하고 그렇게하면서 여러 속성을 추가하고 컬렉션을 반복하며 간단한 제품 ID를 선택하여 반환합니다. 그래서 결국 이것은 우리가 필요로하는 곳에서 여러 개의 루프를 취하고 필요한 것보다 더 많은 것을로드하는 것을 의미합니다.

Magentos 카탈로그/product/view/media.phtml 템플릿의 사본을 사용한다고 가정 해 보겠습니다.

$baseImage = $_product->getImage(); 
    if($_product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE){ 
     $simpleCollection = $_product->getTypeInstance()->getUsedProductCollection($_product) 
      ->addAttributeToSelect('image') 
      // Optionally: 
      //->addAttributeToSelect('small_image') 
      //->addAttributeToSelect('thumbnail') 
      ->addFieldToFilter('image', array('notnull'=>true)) 
      ->addFilterByRequiredOptions(); 

     // Filter out all child products that are out of stock 
     Mage::getSingleton('cataloginventory/stock') 
      ->addInStockFilterToCollection($simpleCollection); 

     if($simpleCollection->getSize())) 
      $baseImage = $simpleCollection->getFirstItem()->getImage(); 
    } 
?> 
<?php if ($baseImage != 'no_selection' && $baseImage): ?> 

이 방법, 우리는 또한 실제로 자신의 '기본 이미지'를 가지고 사용할 수있는 간단한 제품의 경우 없음에 대체이 : 우리는 선이 36 & (37)를 대체 할 것입니다.

[...]$this->helper('catalog/image')->init($_product, 'image', $baseImage)[...] 

그리고 선택적으로, 우리는 모든 단순 목록을 동일한 $의 simpleCollection을 사용할 수

그런 다음 원래 라인 (40)에 우리는 Mage_Catalog_Helper_Image의 세 번째 매개 변수 : 초기화()로 baseImage을 $ 추가해야 작은 이미지로 제품의 이미지, 우리가 좋아하는 경우에 그 :

<?php foreach ($simpleCollection as $_simple): ?> 
    <li> 
     <img src="<?php echo $this->helper('catalog/image')->init($_simple, 'thumbnail', $_simple->getImage())->resize(56); ?>" width="56" height="56" /> 
    </li> 
<?php endforeach; ?> 

구성의 작은 이미지에서 상품 목록

처음 질문을 읽었을 때 제품 목록에 다음 사용 가능한 하위 제품의 '작은 이미지'를 표시해야한다고 생각했습니다. 그 질문에 대해 실제로 명확하지 않기 때문에이 해석에 대한 짧은 대답을 추가하는 것이 정확히 그 사람을 찾는 데 도움이 될 수 있습니다.

제품 목록에서 제품 이미지를 얻기 위해 각 구성 가능한 간단한 컬렉션을로드하고 싶지는 않습니다. 가능한 해결책을 준비하도록 요청 받았을 때 사용 가능한 하위 제품 중 하나의 ID를 저장하는 구성 가능한 (및 blunde) 제품에 대한 새로운 제품 속성을 작성하기로했습니다. 주식 이벤트 옵저버를 추가 했으므로 링크 된 하위 제품이 재고가 없을 때마다이 값이 업데이트됩니다.

우리는 이미 받아 들인 대답을 가지고 있기 때문에 이것에 대해 자세히 설명하는 것이 적절하지 않다고 생각합니다. 그러나이 초안에 관심이있는 모든 사람들을 위해 here을 업로드했습니다.

관련 문제