织梦dedeCMS删除文章时同时删除缩图和内容中大图等附件

站长新闻 12-20 浏览 215
织梦dede删除文章时怎样同时删除缩图和内容中大图,这问题很多朋友都提到了,下面笔者给大家回答下:
打开dede/inc/inc_batchup.php找到"//删除数据库的内容"
在这前面加上
//删除缩略图
1 if($arcRow['litpic']!=""){ 2 $dsql->ExecuteNoneQuery("Delete From uploads where url='$arcRow[litpic]'"); 3 $truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']); 4 $litpicfile = $truedir.$arcRow['litpic']; 5 @unlink($litpicfile); 6 }
//删除大图
01 $arcbodyQuery = "Select * from ".$arcRow['addtable']." where aid='$aid'"; 02 $arcbodyRow = $dsql->GetOne($arcbodyQuery); 03 $imgsrcarray=GetImageSrc($arcbodyRow['body']); 04 foreach ($imgsrcarray as $v) { 05 if((trim($v)!="")&&(!eregi("^http://",$v))){ 06 $dsql->ExecuteNoneQuery("Delete From uploads where url='$v'"); 07 $picfile = $truedir.$v; 08 @unlink($picfile); 09 } 10 } //删除数据库的内容
第二处:
找到
Select archives.ID,archives.title,archives.typeid
改为:
Select archives.ID,archives.title,archives.typeid,archives.litpic
第三处:
在文件最后加上一函数
//获得内容中的图像地址
1 function GetImageSrc($body){ 2 if( !isset($body)) return ''; 3 else{ 4 preg_match_all ("/<(img|IMG)(.*)(src|SRC)=["|'|]{0,}([h|/].*(jpg|JPG|gif|GIF))["|'|s]{0,}/isU",$body,$out); 5 return $out[4]; 6 } 7 } 标签:
本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

热门推荐