php – 在Magento中调整URL的图像大小
发布时间:2020-12-13 17:51:09 所属栏目:PHP教程 来源:网络整理
导读:我正在为自定义类别视图中的每个图像检索一个网址: 像这样: foreach ($collection as $cat){ $cur_category = Mage::getModel('catalog/category')-load($cat-getId()); $_img = $cur_category-getImageUrl(); //stuff } 这给了我原始图像,我想使用Magento
|
我正在为自定义类别视图中的每个图像检索一个网址:
像这样: foreach ($collection as $cat){
$cur_category = Mage::getModel('catalog/category')->load($cat->getId());
$_img = $cur_category->getImageUrl();
//stuff
}
这给了我原始图像,我想使用Magento的内置调整大小功能调整大小.但我是一个新手,并且无法弄清楚如何使代码像产品列表页面上的代码一样工作: $this->helper('catalog/image')->init($_product,'small_image')->resize(306);
如何修改/使用原始代码以使其调整图像大小?谢谢!
没有用于调整类别图像大小的内置功能.但是,您可以使用Varien_Image类.在这里,我写了一段你需要的代码:
foreach ($collection as $_category){
$_file_name = $_category->getImage();
$_media_dir = Mage::getBaseDir('media') . DS . 'catalog' . DS . 'category' . DS;
$cache_dir = $_media_dir . 'cache' . DS;
if (file_exists($cache_dir . $_file_name)) {
echo Mage::getBaseUrl('media') . DS . 'catalog' . DS . 'category' . DS . 'cache' . DS . $_file_name;
} elseif (file_exists($_media_dir . $_file_name)) {
if (!is_dir($cache_dir)) {
mkdir($cache_dir);
}
$_image = new Varien_Image($_media_dir . $_file_name);
$_image->constrainOnly(true);
$_image->keepAspectRatio(true);
$_image->keepFrame(true);
$_image->keepTransparency(true);
$_image->resize(50,50);
$_image->save($cache_dir . $_file_name);
echo Mage::getBaseUrl('media') . DS . 'catalog' . DS . 'category' . DS . 'cache' . DS . $_file_name;
}
}
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |








