Magento 1.9.2 - 点击swatch(RWD主题)后放大的产品图像“恢复”到原始尺寸(210px)

时间:2015-08-29 00:31:45

标签: image magento product

在产品列表(网格)中成功调整(放大)产品图片的大小:

app/design/frontend/rwd/my-theme/template/catalog/product/list.phtml

......看起来像这样:

src="<?php echo $this->helper('catalog/image')
                     ->init($_product, 'small_image')
                     ->constrainOnly(TRUE)
                     ->keepAspectRatio(TRUE)
                     ->keepFrame(FALSE)
                     ->resize(230, 345); ?>"

它们显示OK - 每行3个产品,也在XML文件中配置:

app/design/frontend/rwd/my-theme/layout/catalog.xml

一切正常但每次我使用色板图像(颜色)动态更改产品图像(ajax?)时,它们都会恢复到210px尺寸。进一步检查确认它们已被加载(实际上是用Ajax异步替换),并带有来自此目录的“缓存”产品图像:

media/catalog/product/cache/1/small_image/210x

Firebug显示:

点击色板方块前的原始图片:

    <img id="product-collection-image-22" 
    class="hidden" 
    alt="Product 100" 
    src="http:<my-domain>/media/catalog/product/cache/1/small_image/230x345/
         89b1df1394338e37a97daa6040ec056f/p/e/product_100_black_1.jpg">

替换(恢复原始210px)产品图片:

    <img class="product-collection-image-22" 
    src="http:<my-domain>/media/catalog/product/cache/1/small_image/210x/
         a5e241f90fa2c1f01d1b56f4e8602ff9/p/e/product_100_black_1.jpg">

任何帮助如何修复它?

3 个答案:

答案 0 :(得分:0)

根据我的说法,你不必改变图像的src来改变大小。

如果您在rwd包中看到magento的默认主题

打开app/design/frontend/rwd/my-theme/template/catalog/product/list.phtml转到第128行,你会发现<?php $_imgSize = 210; ?>如果你改变了这个变量,你的所有图像都会改变,包括swatch 1。

还尝试刷新目录图像缓存转到系统&gt;&gt;缓存管理。

答案 1 :(得分:0)

有点晚了,但我找到了答案。 210px是 Magento small_image的默认大小。此大小在后端设置。

转到系统 - &gt;配置 - &gt;目录 - &gt;产品图片

答案 2 :(得分:0)

这里的问题相同,我尝试在list.phtml中编辑$ _imgSize以及System - &gt;配置 - &gt;目录 - &gt;产品图像尺寸已更改。 它不会生成较小的图像。它使用全尺寸。

我觉得它与product-media.js或swatches-list.js有关