新闻中心
dedecms如何删除文章时删除省略图和附件的方法
作者 / 无忧主机 时间 2016-11-02 21:12:28
织梦dedecms作为一款内容管理系统,作为一款内容管理系统,站长每日的工作无非是更新文章。但是在网站日常维护中,有时需要删除文章,但是文章中附带的省略图以及附件仍然会存留在php空间内。这类问题相信很多站长都希望解决。毕竟浪费主机空间。在之前有一篇文档和今天所分享的文档整好相反,有兴趣的同学可以看看:DEDECMS删除文章时保留HTML文件和附件图片。言归正传! dedecms如何删除文章时删除省略图和附件的方法如下: 1、首先是点击进入到我们的控制面板,然后找到文件管理选项,如图所示: 2、点击进入之后找到我们站点的根目录,如图所示: 3、进入到这个目录之后找到我们的程序的路径:/dede/inc/inc_batchup.php,点击编辑,如图所示: 4、修改代码操作 1、查找: //删除数据库的内容 在前面添加以下代码:
//删除缩略图 if($arcRow['litpic']!=""){ $dsql->ExecuteNoneQuery("Delete From sq_uploads where url='$arcRow[litpic]'"); $truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']); $litpicfile = $truedir.$arcRow['litpic']; @unlink($litpicfile); } //删除大图 $arcbodyQuery = "Select * from ".$arcRow['addtable']." where aid='$aid'"; $arcbodyRow = $dsql->GetOne($arcbodyQuery); $imgsrcarray=GetImageSrc($arcbodyRow['body']); foreach ($imgsrcarray as $v) { if((trim($v)!="")&&(!eregi("^http://",$v))){ $dsql->ExecuteNoneQuery("Delete From sq_uploads where url='$v'"); $truedir = GetTruePath($arcRow['siterefer'],$arcRow['sitepath']); $picfile = $truedir.$v; @unlink($picfile); } }2、查找:
Select a.ID,a.title,a.typeid,修改为:
Select a.ID,a.title,a.typeid,a.litpic,3、最后在这个文件的最后添加一个函数:
//删除文章同时删除大图函数 function GetImageSrc($body){ if( !isset($body)) return; else{ preg_match_all("/<(img|IMG)(.*)(src|SRC)=["|'|]{0,}([h|/].*(jpg|JPG|gif|GIF))["|'|s]{0,}/isU",$body,$out); return $out[4]; } }温馨提示:该技术解决方案的是由无忧主机客服为我们空间客户处理该问题时提供的处理方法,确保在无忧主机能完美实现,因服务较多,客服繁忙,其他主机我们没有过多精力进行大范围测试,不能确保所有虚拟主机都能完美处理,请您理解!
无忧主机提供365天*24小时全年全天无休、实时在线、零等待的售后技术支持。竭力为您免费处理您在使用无忧主机过程中所遇到的一切问题! 如果您是无忧主机用户,那么您可以通过企业QQ【800088151】、售后QQ【网站最下端有】、旺旺【锋讯企业】、400-655-0080免费电话、后台提交工单这些方式联系无忧主机客服! 如果您不是我们的客户也没问题,点击页面最右边的企业QQ在线咨询图标联系我们并购买后,我们为您免费进行无缝搬家服务,让您享受网站零访问延迟的迁移到无忧主机的服务! 无忧主机相关文章推荐阅读: DEDECMS为什么在模板里面调用了软件的大小没有任何的作用呢? DEDECMS更换为KINDEDITOR编辑器后栏目内容无法保存的解决方法 织梦DEDECMS后台添加友情链接缩略图不显示多出字符怎么办
本文地址:https://www.51php.com/dedecms/23867.html