织梦删除空间中多余的没有被引用的图片
在用织梦建站的时候,我们时常会删除一些文章,但是有个问题,就是删除文章的同时,文章内的图片还保存在网站空间中,占用了服务器资源。我曾经就有过一次,无用的图片达到八百多MB,要是手动去删,何年何月啊。
一般来说有二种情况,我们分别来操作:
1、删除文章的同时,删除该文章内的图片,
打开dede/inc/inc_batchup.php
第一处找到
"//删除数据库的内容"
在这前面加上
//删除缩略图 if($arcRow['litpic']!=""){ $dsql->ExecuteNoneQuery("Delete From dede_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 dede_uploads where url='$v'"); $picfile = $truedir.$v; @unlink($picfile); } } //删除数据库的内容
第二处:找到
Select dede_archives.ID,dede_archives.title,dede_archives.typeid
改为:
Select dede_archives.ID,dede_archives.title,dede_archives.typeid,dede_archives.litpic
第三处:
在文件最后加上一函数
//获得内容中的图像地址 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]; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持秀站网。
您可能感兴趣的文章
- 08-05Dedecms文件目录结构解说(能知道织梦每个文件有什么用)
- 08-05织梦DedeCMS获取当前栏目文章数量
- 08-05织梦模板如何添加和调用自定义字段的方法
- 08-05DedeCMS后台模块列表显示空白的解决办法
- 08-05织梦DedeCMS调用显示discuz里面主题的方法
- 08-05限制织梦会员每天投稿数量方法
- 08-05常用的织梦dedecms安全设置集合整理
- 08-05织梦教程:后台编辑器添加中文字体方法
- 08-05织梦修改文章排序到第一位如何解决?
- 08-05dede副栏目调用支持arclist标签
阅读排行
本栏相关
- 08-05dede:channel currentstyle 失效问题,调用子
- 08-05网站底部版权符号怎么打出来?
- 08-05Dedecms文件目录结构解说(能知道织梦
- 08-05织梦DedeCMS获取当前栏目文章数量
- 08-05Dedecms5.7版ckeditor网页编辑器添加中文
- 08-05织梦模板如何添加和调用自定义字段
- 08-05DedeCMS后台模块列表显示空白的解决办
- 08-05DedeCMS自定义字段图片调用的问题{de
- 08-05织梦DedeCMS调用显示discuz里面主题的方
- 08-05限制织梦会员每天投稿数量方法
随机阅读
- 01-10C#中split用法实例总结
- 01-10SublimeText编译C开发环境设置
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 04-02jquery与jsp,用jquery
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 08-05dedecms(织梦)副栏目数量限制代码修改
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 01-11ajax实现页面的局部加载
- 01-10delphi制作wav文件的方法