コード例 #1
0
 /**
  * Create image block
  *
  * @return \Magento\Catalog\Block\Product\Image
  */
 public function create()
 {
     /** @var \Magento\Catalog\Helper\Image $helper */
     $helper = $this->helperFactory->create()->init($this->product, $this->imageId);
     $template = $helper->getFrame() ? 'Magento_Catalog::product/image.phtml' : 'Magento_Catalog::product/image_with_borders.phtml';
     $imagesize = $helper->getResizedImageInfo();
     $data = ['data' => ['template' => $template, 'image_url' => $helper->getUrl(), 'width' => $helper->getWidth(), 'height' => $helper->getHeight(), 'label' => $helper->getLabel(), 'ratio' => $this->getRatio($helper), 'custom_attributes' => $this->getCustomAttributes(), 'resized_image_width' => !empty($imagesize[0]) ? $imagesize[0] : $helper->getWidth(), 'resized_image_height' => !empty($imagesize[1]) ? $imagesize[1] : $helper->getHeight()]];
     return $this->imageFactory->create($data);
 }
コード例 #2
0
 /**
  * Retrieve product image data
  *
  * @param \Magento\Catalog\Model\Product $product
  * @return \Magento\Catalog\Block\Product\Image
  * @SuppressWarnings(PHPMD.NPathComplexity)
  */
 protected function getImageData($product)
 {
     /** @var \Magento\Catalog\Helper\Image $helper */
     $helper = $this->imageHelperFactory->create()->init($product, 'wishlist_sidebar_block');
     $template = $helper->getFrame() ? 'Magento_Catalog/product/image' : 'Magento_Catalog/product/image_with_borders';
     $imagesize = $helper->getResizedImageInfo();
     $width = $helper->getFrame() ? $helper->getWidth() : (!empty($imagesize[0]) ? $imagesize[0] : $helper->getWidth());
     $height = $helper->getFrame() ? $helper->getHeight() : (!empty($imagesize[1]) ? $imagesize[1] : $helper->getHeight());
     return ['template' => $template, 'src' => $helper->getUrl(), 'width' => $width, 'height' => $height, 'alt' => $helper->getLabel()];
 }