Magento删除产品同时删除图片
- public function delete()
- {
- parent::delete();
- Mage::dispatchEvent($this->_eventPrefix.'_delete_after_done', array($this->_eventObject=>$this));
- return $this;
- }
- public function delete()
- {
- parent::delete();
- Mage::dispatchEvent($this->_eventPrefix.'_delete_after_done', array($this->_eventObject=>$this));
- foreach ($this->getMediaGallery('images') as $image) {
- $image_path = $this->getMediaConfig()->getMediaPath($image['file']);
- if (file_exists($image_path)) {
- @unlink($image_path);
- }
- }
- return $this;
- }
- <?xml version="1.0"?>
- <config>
- <modules>
- <MagentoBoy_DeleteProductImages>
- <active>true</active>
- <codePool>local</codePool>
- </MagentoBoy_DeleteProductImages>
- </modules>
- </config>
- <?xml version="1.0"?>
- <config>
- <modules>
- <MagentoBoy_DeleteProductImages>
- <version>0.1.0</version>
- </MagentoBoy_DeleteProductImages>
- </modules>
- </config>
- <?php
- class MagentoBoy_DeleteProductImages_Model_Observer
- {
- public function processProductAfterDeleteEvent(Varien_Event_Observer $observer)
- {
- $eventProduct = $observer->getEvent()->getProduct();
- if ($eventProduct && $eventProduct->getId()) {
- foreach ($eventProduct->getMediaGallery('images') as $image) {
- $image_path = $eventProduct->getMediaConfig()->getMediaPath($image['file']);
- if (file_exists($image_path)) {
- @unlink($image_path);
- }
- }
- }
- return $this;
- }
- }
- <config>
- <global>
- <models>
- <deleteproductimages>
- <class>MagentoBoy_DeleteProductImages_Model</class>
- </deleteproductimages>
- </models>
- <events>
- <catalog_product_delete_after_done>
- <observers>
- <deleteproductimages>
- <class>deleteproductimages/observer</class>
- <method>processProductAfterDeleteEvent</method>
- </deleteproductimages>
- </observers>
- </catalog_product_delete_after_done>
- </events>
- </global>
- </config>
Magento删除产品同时删除图片的更多相关文章
- 如何更改/删除magento首页产品/广告图片等模块信息
如何更改/删除magento首页产品/广告图片等模块信息,如果只是修改一些简单的地方,例如已经存在 的左右栏目里面的图片内容等,是很简单的,直接在后台就可以修改的,具体如下: 如何删除magento首 ...
- Laravel删除产品-CRUD之delete(destroy)
上一篇讲了Laravel编辑产品-CRUD之edit和update,现在我们讲一下删除产品,方法和前面的几篇文章类似,照着ytkah来操作吧 1,controller的function destroy ...
- 1) 上传多张图片时 ,对 $_FILES 的处理. upload ; 2)fileinput 上传多张图片. 3) 修改,删除的时候删除原来的资源,图片 update, delete , 删除 4)生成器中两个字段上传图片的时候,要修改生成器生成的代码
1上传多张图片, 要对 $_FILES进行 重新处理. //添加 public function addCourseAlbumAction() { $CourseAlbumModel = new Co ...
- WPF中删除打开过的图片
在WPF中,当我们删除打开过的图片时,往往会遇到"...无法删除,文件正在被另一个进程使用"的异常.即使当前文件是打开后关闭过的也不行. 这个问题的原因很简单,是因为WPF的缓存策 ...
- spring mvc 图片上传,图片压缩、跨域解决、 按天生成文件夹 ,删除,限制为图片代码等相关配置
spring mvc 图片上传,跨域解决 按天生成文件夹 ,删除,限制为图片代码,等相关配置 fs.root=data/ #fs.root=/home/dev/fs/ #fs.root=D:/fs/ ...
- 动态加载/删除css文件以及图片预加载
动态加载/删除css文件以及图片预加载 功能模块页面 最近,工作中遇到了一个比较奇葩的需求:要在一个页面(PC端)增加一个功能模块,但是这个页面在不久之后要重构,为了新增加的模块可以继续复用, ...
- Java 添加、替换、删除PDF中的图片
概述 本文介绍通过java程序向PDF文档添加图片,以及替换和删除PDF中已有的图片.另外,关于图片的操作还可参考设置PDF 图片背景.设置PDF图片水印.读取PDF中的图片.将PDF保存为图片等文章 ...
- TP5上传图片到七牛云,并且删除七牛云的图片
一,通过composer 下载七牛云 sdk composer require qiniu/php-sdk 二,手动下载七牛云sdk 1,https://developer.qiniu.com/kod ...
- [Xcode 实际操作]七、文件与数据-(5 )复制、移动、删除文件和删除文件夹
目录:[Swift]Xcode实际操作 本文将演示如何复制.移动和删除文件. 在项目导航区,打开视图控制器的代码文件[ViewController.swift] import UIKit class ...
随机推荐
- FG函数模块
ALDB: ABAP/4上的逻辑数据库 选择屏幕的修改更新 BUBA_4: ...
- PHP基本知识收集
1.符号“@”的作用 @是可以屏蔽函数执行过程中遇到问题而产生的一些错误.警告信息,这样用户就看不到程序的出错信息.这样除了用户界面会友好一些外,更重要的是安全性,因为屏蔽了出错文件的路径等信息. 2 ...
- 二分图 最大权匹配 km算法
这个算法的本质还是不断的找增广路: KM算法的正确性基于以下定理:若由二分图中所有满足A[i]+B[j]=w[i,j]的边(i,j)构成的子图(称做相等子图)有完备匹配,那么这个完备匹配就是二分图的最 ...
- java语句类型
public class Test { public static void main(String[] args) { System.out.println("Test is ok&quo ...
- P142-1
P142-1.1 登录页面 <%@ page language="java" contentType="text/html; charset=UTF-8" ...
- 二模 (7) day1
第一题: 题目大意: 给出数轴上N棵树的坐标和高度,如果两棵树之间的距离小于其中一颗树的高度,那么就有树会被挡住.因此要把一些树砍矮一点.求砍树的总高度最小值. N<=100000; 解题过程: ...
- SQL Server 自定义字符串分割函数
一.按指定符号分割字符串,返回分割后的元素个数,方法很简单,就是看字符串中存在多少个分隔符号,然后再加一,就是要求的结果(标量值函数) create function Func_StrArrayL ...
- Python中subprocess学习
subprocess的目的就是启动一个新的进程并且与之通信. subprocess模块中只定义了一个类: Popen.可以使用Popen来创建进程,并与进程进行复杂的交互.它的构造函数如下: subp ...
- jquery animate()方法使用的注意事项
当使用 animate() 时,必须使用 Camel 标记法书写所有的属性名,比如,必须使用 paddingLeft 而不是 padding-left,使用 marginRight 而不是 margi ...
- ScrollView中嵌入ListView,GridView冲突的解决(让ListView全显示出来)
ScrollView中嵌入原生ListView或GridView,会出现ListView,GridView显示不全的问题. 解决方法:重新构造一个ListView或GridView,重写OnMeasu ...