导读:织梦文章织梦文章织梦在发布文章的时候,难免需要一些图片等等让文章更丰富,但是在删除的时候也有了一定的复杂度。这次就分享一个很实用的功能,删除织梦文章的同时删掉该文章下的图片与附织梦模板免费。
织梦在发布文章的时候,难免需要一些图片等等让文章更丰富,但是在删除的时候也有了一定的复杂度。这次就分享一个很实用的功能,删除织梦文章的同时删掉该文章下的图片与附件等文件,有效的节省了后期慢慢排除无用图片和附件的时间还实时节省了一些不必要的存储空间。
实现方法如下:
1.打开/include/extend.func.php文件,在最后加入如下代码
//解析body数据,获得所有图片的绝对地址
function GetPicsTruePath($body,$litpic)
{
$delfiles = array();
//存储图片地址数据
if(!empty($litpic))
{
$litpicpath = GetTruePath();
$litpicpath .= $litpic;
$delfiles[] = $litpicpath;
//缩略图地址
}
preg_match_all("/src=[\"|'|\S|\s]([^ |\/|>]*){0,}(([^>]*)\.(gif|jpg|png))/isU",$body,$tmpdata);
$picspath = array_unique($tmpdata[2]);//body中所有图片的地址
foreach($picspath as $tmppath)
{
$path = GetTruePath();//获得绝对路径
$picpath = preg_re织梦手机模板place("/[a-zA-z]+:\/\/[^ |\/|\s]*/",'',$tmppath);//去掉网址部分
$path .=$picpath;
$delfiles[] = $path;//保存处理后的数据
}
return $delfiles;
}
//获得文章Body数据
function GetArcBody($aid)
{
global $dsql;
$query = "SELECT js_addonarticle.body FROM xmzy_addonarticle WHERE xmzy_addonarticle.aid = '$aid'";
$row = $dsql->GetOne($query);
if(is_array($row))
return $row;
else
return false;
} //genban.org修改于2010.01.28
//写入日志文件
function WriteToDelFiles($msg)//删除文章的时候会通过此函数记录日志
{
if(empty($msg)) $savemsg="未获得消息";
else $savemsg = $msg;
$errorFile = dirname(__FILE__).'/../data/del_body_file.txt';//删除记录文件
$fp = @fopen($errorFile, 'a');
@fwrite($fp," {$savemsg}");
@fclose($fp);
}
|
2.打开dede/inc/inc_batchup.php文件,找到:
$arcRow = $dsql->GetOne($arcQuery);
|
在下边添加:
$arcBodyRow = GetArcBody($aid);
|
最后找到:
dede后台模板
return TRUE;
|
在这句话上边添加:
//解析Body中的资源,并删除
$willDelFiles = GetPicsTruePath($arcBodyRow['body'],$arcRow['litpic']);
$nowtime = time();
$executetime = MyDate('Y-m-d H:i:s',$nowtime)织梦模板;
//获得执行时间
$msg = " 文章标题:$arcRow[title]";
WriteToDelFiles($msg);
if(!empty($willDelFiles))
{
foreach($willDelFiles as $file)
{
if(file_exists($file) && !is_dir($file))
{
if(unlink($file)) $msg = " 位置:$file 结果:删除成功! 时间:$executetime"; else $msg = " 位置:$file 结果:删除失败! 时间:$executetime";
}
else $msg = " 位置:$file 结果:文件不存! 时间:$executetime";
WriteToDelFiles($msg);
}
//END foreach
} else
{
$msg = " 未在Body中解析到数据 Body原始数据:$arcBodyRow[body] 时间:$executetime";
WriteToDelFiles($msg);
}
关键词标签: 织梦 附件 文章
声明: 本文由我的SEOUC技术文章主页发布于:2023-07-17 ,文章织梦dedecms删除文章的同时删除该文章下的图片和主要讲述文章,附件,织梦网站建设源码以及服务器配置搭建相关技术文章。转载请保留链接: https://www.seouc.com/article/web_28687.html
为你推荐与织梦dedecms删除文章的同时删除该文章下的图片和相关的文章
网站建设技术SEOUC.COM
专注网站建设,SEO优化,小程序设计制作搭建开发定制网站等,数千家网站定制开发案例,网站推广技术服务。
5000+合作客服
8年从业经验
150+覆盖行业
|