// 打开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];
}
}
完成以上步骤后,请确保在本地环境中先进行测试,确认无误后再上传至实际网站,以避免可能的错误影响正常运行。通过这些简单的代码调整,您可以有效减少服务器空间的浪费,提升网站资源管理效率。记得定期检查和优化您的网站文件,以保持最佳性能。