Magento 产品占位符图片

标签 magento

我在 System -> Configuration -> Catalog -> Product Image Placeholders 的后端设置了产品占位符图像

我可以使用以下代码在我的一个 View 中以编程方式成功访问产品占位符图像:

$this->getSkinUrl($this->helper('catalog/image')->init(
Mage::getModel('catalog/product'), 'small_image'));

我的问题是以上返回:
http://x.dev/skin/frontend/base/default/http://x.dev/media/catalog/product/cache/7/small_image/0dc2d03fe217f8c83829496872af24a0/placeholder/default/logo_4.jpg*

似乎 getSkinUrl 做了它所说的并将皮肤路径添加到字符串中,这是我的 真正问题 ,为了解决我认为我会删除 getSkinUrl 的问题:
$this->helper('catalog/image')->init(
Mage::getModel('catalog/product'), 'small_image');

但是上面的代码抛出:
PHP Fatal error:  Allowed memory size of 268435456 bytes exhausted

谁能看到这个问题,我似乎做得更少,而且似乎陷入了一个循环。

或者有人知道另一种方法吗?我真的被困住了,我真的不想硬编码。

谢谢

最佳答案

非常感谢@Lucasmus 让我走上正轨。

我最终以一种 hacky 的方式解决了这个问题,但它确实有效。

Mage::getModel('catalog/product')->getSmallImageUrl(200,200);

这将为您提供 System -> Configuration -> Catalog -> Product Image Placeholders 中设置的产品占位符图像

编辑

正如@Tyler V 指出的那样,这是一种已过时的方法,如果您不想使用它,可以使用与该方法相同的逻辑,它有点冗长:
    (string)Mage::helper('catalog/image')->init(
        Mage::getModel('catalog/product'),
        'small_image'
    )->resize(200, 200);

关于Magento 产品占位符图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12744895/

相关文章:

javascript - Magento 1.9.2 - 更新可配置产品流程中的自定义属性 'delivery_time'

php - 如何在 Magento 的自定义产品网格中显示是/否属性?

Magento:<操作方法="unsetChild">不删除 block

Magento:获取 EAV 属性选项/选择的值

Magento:为什么加载集合而不是直接加载地址?

php - Magento:是什么导致重新索引……为什么它会中断?

php - Magento 新主机 - 403 Forbidden - 服务器无法读取 htaccess 文件

magento - Magento 中的高级导出配置文件

php - 转到销售 -> 订单页面时,Magento 网站崩溃

php - 如何让 magento 使用与 'Default Category' 不同的类别来生成标题导航?