1

在 Magento 的 media.phtml 文件中,您可以获得第一个产品图像的图像高度:

<?php $imageWidth = $this->helper('catalog/image')->init($_product, 'image')->getOriginalWidth(); ?>

但是,这不适用于进一步的产品图像(在 foreach 循环中):

<?php if (count($this->getGalleryImages()) > 1): ?>
<?php foreach ($this->getGalleryImages() as $_image): ?>

也没有。。

<?php echo $this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile())->getOriginalWidth(); ?>

有人有答案吗?

4

2 回答 2

3

目录图像助手缺乏对这些操作的支持。您将不得不初始化您的图像模型并从那里获取大小。所以:

<?php foreach ($this->getGalleryImages() as $_image): ?>
  <?php $image = new Varien_Image($_image->getPath()); ?>
  <?php echo $image->getOriginalWidth(); ?>
  <?php echo $image->getOriginalHeight(); ?>
<?php endforeach; ?>
于 2013-01-08T09:23:29.507 回答
0

Jernej 答案的另一种选择是:

$imagelink = $this->helper('catalog/image')->init($this->getProduct(), 'image', $_image->getFile());                        

list($width, $height, $type, $attr) = getimagesize($imagelink);

echo $width; 
于 2013-01-08T15:37:36.450 回答